changelog.txt 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381
  1. DllExport - https://github.com/3F/DllExport
  2. - - - - - - - - - - - - - - - - - - - - - -
  3. [v1.6.1] 2018.08.05
  4. * FIXED: Fixed bug when some methods cannot be exported. Issue #59.
  5. * FIXED: Bug 'The node is not parented by this object' when Configuring projects. Issue: #77.
  6. * FIXED: Fixed GDI objects leak in Wizard.
  7. * FIXED: `-msb` key cannot affect for GetNuTool section. Issue #74.
  8. * FIXED: Bug when automatic restoring still uses default keys from manager after configuring with custom `-server`.
  9. * FIXED: Problem with double quotes for `-packages` key.
  10. * FIXED: Possible incorrect repetition of the relative path for `-packages` key.
  11. * FIXED: Possible problem 'The request was aborted: Could not create SSL/TLS secure channel.'. Issue: #77.
  12. * FIXED: Possible problem with path when `-msb` key contains round brackets,
  13. e.g.: `D:\C\Program Files (x86)\Microsoft Visual Studio\`...
  14. * NEW: Implemented features for additional automation. Issue #76.
  15. New actions:
  16. * `-action Export`
  17. * `-action Recover`
  18. * `-action Unset`
  19. Documentation: https://github.com/3F/DllExport/wiki/DllExport-Manager#automation
  20. * NEW: Added proxy support for manager.
  21. The common format: `[usr[:pwd]@]host[:port]`
  22. Documentation: https://github.com/3F/DllExport/wiki/DllExport-Manager#proxy
  23. * NEW: Wizard. Added sorting an projects in main window by its installing status and by availability.
  24. * NEW: Wizard. Added filter for list of projects in main wizard window.
  25. * NEW: New 'Offline' versions from our packages. See GitHub Releases page.
  26. * NEW: Added key to force update `Reference` without PublicKeyToken. Issue #65.
  27. * NEW: Added `-force` key for manager to use aggressive behavior, e.g. like removing pkg when updating.
  28. Wiki: https://github.com/3F/DllExport/wiki/DllExport-Manager#receiving-new-package-version
  29. * NEW: New action `-action Upgrade`.
  30. Aggregates an Update action with additions for upgrading.
  31. Today's an Upgrade action:
  32. ```
  33. DllExport -action Upgrade ...
  34. ```
  35. is equal to:
  36. ```
  37. DllExport -action Update -mgr-up -force ...
  38. ```
  39. Wiki: https://github.com/3F/DllExport/wiki/DllExport-Manager#updating
  40. * CHANGED: Case sensitivity for the Action names.
  41. * CHANGED: `-action Default` for nothing.
  42. * CHANGED: UI layout fixes for -Info form (Thanks @Genteure, Issue #61).
  43. * CHANGED: Allows absolute path for `-packages` key.
  44. * CHANGED: `-sln-file` key now can affect to `-action Configure`
  45. * CHANGED: hMSBuild tool now is also distributed inside root directory of the packages zip & nupkg.
  46. Use this for EXP0014 problem: "RunIlAsm. The library manager still cannot be found."
  47. Example: https://www.youtube.com/watch?v=zUejJ4vUPGw
  48. * CHANGED: Updated GetNuTool v1.6.2
  49. * CHANGED: Updated MvsSln v2.1.0
  50. * OTHER: Some other fixes and changes with manager and wizard.
  51. * NOTE: To upgrade configured version: `DllExport -action Upgrade ...`
  52. * NOTE: Configuring projects: `DllExport -action Configure ...`
  53. * NOTE: Screencasts:
  54. * Quick start: https://www.youtube.com/watch?v=sBWt-KdQtoc
  55. * Basic examples for C++ and C#: https://www.youtube.com/watch?v=9Hyg3_WE9Ks
  56. * Complex types and Strings: https://www.youtube.com/watch?v=QXMj9-8XJnY
  57. * NOTE: Our actual wiki - https://github.com/3F/DllExport/wiki
  58. * Documentation for manager: https://github.com/3F/DllExport/wiki/DllExport-Manager
  59. [v1.6] 2017.12.29
  60. * NEW: The new embeddable lightweight manager for distribution via MvsSln & GetNuTool projects. Issue #38.
  61. Based on hMSBuild logic and includes GetNuTool core v1.6.1.
  62. Now you shouldn't use standard nuget clients anymore:
  63. https://www.youtube.com/watch?v=9bYgywZ9pPE
  64. Quick start: https://www.youtube.com/watch?v=sBWt-KdQtoc
  65. ==============================
  66. DllExport -action Configure
  67. ==============================
  68. Package from nuget.org already contains manager, but you can also get it directly.
  69. Latest manager: https://3F.github.io/DllExport/releases/latest/manager/
  70. ~18 Kb text-based embeddable batch-script that does not require powershell and dotnet-cli.
  71. Automatic restoring still is available but you can also use: `DllExport -action Restore`
  72. All available features: `DllExport -h`
  73. Direct links to remote package (without nuget server) via `-pkg-link {uri}` key. Issue #53.
  74. NuGet Server by default: nuget.org.
  75. * NEW: The new Wizard (configurator via MvsSln). To easy configure your projects in any place. Part of Issue #38.
  76. MvsSln v2.0: https://github.com/3F/MvsSln
  77. * NEW: Added support of empty/global namespaces - Issue #47.
  78. Use `Direct-Mod` if Cecil will not process this correctly.
  79. * NEW: Implemented another storage for configuration: '.net.dllexport.targets'. Issue #49.
  80. * NEW: New settings for configurator (Wizard):
  81. * Path to custom ILAsm.
  82. * Flag to keep intermediate Files (IL Code, Resources, ...).
  83. * Timeout of execution in milliseconds.
  84. * NEW: Implemented automatic checking existence of a correct exported proc via Conari. Issue #55.
  85. Wizard controls it via `$(DllExportPeCheck)`:
  86. * 0x01 bit - Will check count of all planned exports from final PE32/PE32+ module.
  87. * 0x02 bit - Will check existence of all planned exports (IL code) in actual PE32/PE32+ module.
  88. * NEW: Implemented PE32/PE32+ Viewer to check manually available exports from final modules. Issue #55.
  89. New key for manager:
  90. ```
  91. -pe-exp-list {module} - To list all available exports from PE32/PE32+ module.
  92. ```
  93. Sample:
  94. ```
  95. DllExport -pe-exp-list bin\Debug\regXwild.dll
  96. ```
  97. * FIXED: Fixed target platform detection. Issue #34.
  98. Details: https://github.com/3F/DllExport/issues/34#issuecomment-306171060
  99. * FIXED: Fixed problem when the Post-Build event is triggered before our tool. Issue #35.
  100. Use this if still is needed:
  101. ```
  102. <Target Name="PostBuildEventBeforeDllExport" BeforeTargets="DllExportMod">
  103. ...
  104. </Target>
  105. ```
  106. * FIXED: Fixed generation of exp + .lib via MS Library Manager for VS2017. Issue #37.
  107. Now it also includes processing through VsDevCmd & VcVarsAll initializer scripts.
  108. Use the folowing msbuild properties to override values by default:
  109. * $(DllExportVcVarsAll); $(DllExportVsDevCmd)
  110. * FIXED: Fixes possible problem with multiple properties that contains *Undefined* word,
  111. e.g.: *Undefined*\path1;C:\path2 ...
  112. * CHANGED: Added information about finding lib tool. Issue #44.
  113. * CHANGED: UI. Selected platform now affects to all configurations of project instead of active as before.
  114. * CHANGED: Now nuget package does not contain library in `lib/.../` Details in #36.
  115. * CHANGED: Now we also distribute .zip package for work through our manager etc.
  116. https://github.com/3F/DllExport/releases
  117. * NOTE: How to avoid EXP0014: RunIlAsm. The library manager still cannot be found.
  118. https://www.youtube.com/watch?v=zUejJ4vUPGw
  119. Related Issue #44
  120. * NOTE: Quick start (Configuring, Automatic restoring, Pe-Viewer):
  121. https://www.youtube.com/watch?v=sBWt-KdQtoc
  122. * NOTE: The latest text-based manager:
  123. https://3F.github.io/DllExport/releases/latest/manager/
  124. Other versions you can find from GitHub Releases:
  125. * https://github.com/3F/DllExport/releases
  126. Or get it from nuget packages starting with v1.6+
  127. * NOTE: PE-features via Conari v1.3.0 https://github.com/3F/Conari
  128. * KNOWN: Bug when - "Build successful but methods are not exported." Issue #59
  129. For today, anyone else may also try to use https://github.com/3F/Conari to avoid similar @Genteure's problem.
  130. * DIFF(v1.6-RC):
  131. * FIXED: Wizard. Fixed incorrect layout for zh_CN Simplified Chinese (Thanks @Genteure). Issue #61
  132. * FIXED: Fixes automatic restoring the package via msbuild. Issue #62
  133. [v1.6-RC] 2017.11.26
  134. * FIXED: Avoids crashes when project cannot be loaded for some reasons. Issue #56
  135. * FIXED: Fixed usage of manager outside the Solution directory.
  136. * FIXED: Fixed restoring package when using `-pe-exp-list` command.
  137. * NEW: Added `-mgr-up` key. Will update manager to version from '-dxp-version'.
  138. * NOTE: Thanks for your feedback. Now we're ready for release v1.6, soon.
  139. Please check release-candidate as carefully as possible.
  140. Start with:
  141. ==============================
  142. DllExport -action Configure
  143. ==============================
  144. https://3F.github.io/DllExport/releases/latest/manager/
  145. https://www.youtube.com/watch?v=okPThdWDZMM&t=46s
  146. [v1.6-beta3] 2017.10.27
  147. * NEW: Implemented another storage for configuration: '.net.dllexport.targets'. Issue #49.
  148. * NEW: Implemented automatic checking existence of a correct exported proc via Conari. Issue #55.
  149. Wizard controls it via `$(DllExportPeCheck)`:
  150. * 0x01 bit - Will check count of all planned exports from final PE32/PE32+ module.
  151. * 0x02 bit - Will check existence of all planned exports (IL code) in actual PE32/PE32+ module.
  152. * NEW: Implemented PE32/PE32+ Viewer to check manually available exports from final modules. Issue #55.
  153. New key for manager:
  154. ```
  155. -pe-exp-list {module} - To list all available exports from PE32/PE32+ module.
  156. ```
  157. Sample:
  158. ```
  159. DllExport -pe-exp-list bin\Debug\regXwild.dll
  160. ```
  161. * NEW: Implemented `-pkg-link {uri}` key for DllExport manager. Issue #53.
  162. * NEW: New settings for Wizard:
  163. * Path to custom ILAsm.
  164. * Flag to keep intermediate Files (IL Code, Resources, ...).
  165. * Timeout of execution in milliseconds.
  166. * CHANGED: Updated MvsSln v2.0. Full changelog: https://github.com/3F/MvsSln/blob/master/changelog.txt
  167. * NOTE: PE-features via Conari v1.3.0 https://github.com/3F/Conari
  168. [v1.6-beta2] 2017.08.19
  169. * NOTE: This release contains trivial fixes only for our manager because of problems with nuget.org. Issue #38.
  170. Please read all changes in previous beta release and please note again - you shouldn't use standard nuget clients anymore:
  171. https://www.youtube.com/watch?v=okPThdWDZMM
  172. Test and comment anything about this in Issue #38 if you need.
  173. * FIXED: Updated GetNuTool v1.6.1 to fix problems with possible incorrect CRC & Compressed size info from nuget.org.
  174. Changelog here:
  175. https://github.com/3F/GetNuTool/blob/master/changelog.txt
  176. Related issues:
  177. * https://github.com/3F/GetNuTool/issues/3
  178. * https://github.com/3F/DllExport/issues/38#issuecomment-322250229
  179. * CHANGED: Changed url to get latest manager directly. Please use this if you need:
  180. * https://3F.github.io/DllExport/releases/latest/manager/
  181. Other versions you can find from GitHub Releases:
  182. * https://github.com/3F/DllExport/releases
  183. Or get it from nuget packages starting with v1.6+
  184. [v1.6-beta] 2017.08.12
  185. * NEW: The new lightweight manager & distribution via MvsSln & GetNuTool projects. Issue #38.
  186. Based on hMSBuild logic and includes GetNuTool core.
  187. Now you shouldn't use standard nuget clients anymore:
  188. https://www.youtube.com/watch?v=okPThdWDZMM
  189. Package from nuget.org already contains this, but you can also get it directly.
  190. Latest version: https://raw.githubusercontent.com/3F/DllExport/latest/manager/DllExport.bat
  191. ~18 Kb text-based embeddable batch-scripts that does not require powershell and dotnet-cli.
  192. To install/uninstall or to reconfigure your projects: `DllExport -action Configure`
  193. To manually restore package: `DllExport -action Restore`
  194. All available features: `DllExport -h`
  195. Server by default - nuget.org
  196. * NEW: The new Wizard (configurator via MvsSln). To easy configure your projects in any place. Issue #38.
  197. MvsSln v1.0.1.43422: https://github.com/3F/MvsSln
  198. * NEW: Added support of global namespaces - Issue #47.
  199. Use `Direct-Mod` if Cecil will not process this correctly.
  200. * FIXED: Fixed target platform detection. Issue #34.
  201. Details: https://github.com/3F/DllExport/issues/34#issuecomment-306171060
  202. * FIXED: Fixed problem when the Post-Build event is triggered before our tool. Issue #35.
  203. Use this if still is needed:
  204. ```
  205. <Target Name="PostBuildEventBeforeDllExport" BeforeTargets="DllExportMod">
  206. ...
  207. </Target>
  208. ```
  209. * FIXED: Fixed generation of exp + .lib via MS Library Manager for VS2017. Issue #37.
  210. Now it also includes processing through VsDevCmd & VcVarsAll initializer scripts.
  211. Use the folowing msbuild properties to override values by default:
  212. * $(DllExportVcVarsAll); $(DllExportVsDevCmd)
  213. * FIXED: Fixes possible problem with multiple properties that contains *Undefined* word,
  214. e.g.: *Undefined*\path1;C:\path2 ...
  215. * CHANGED: Added information about finding lib tool. Issue #44.
  216. * CHANGED: UI. Selected platform now affects to all configurations of project instead of active as before.
  217. * CHANGED: Now, nuget package does not contain library in `lib/.../` Details in #36.
  218. * CHANGED: Now, we also distribute .zip package for work through our manager etc.
  219. https://github.com/3F/DllExport/releases
  220. The latest text-based manager you can find here:
  221. https://raw.githubusercontent.com/3F/DllExport/latest/manager/DllExport.bat
  222. Illustration here: https://www.youtube.com/watch?v=okPThdWDZMM
  223. [v1.5.2] 2017.03.13
  224. * FIXED: Failing to compile in VS2017. Issue #29
  225. `Error The "DllExportAppDomainIsolatedTask" task failed unexpectedly. System.ArgumentException: Requested value 'Version46' was not found.`
  226. * FIXED: Possible error `Could not load file or assembly Microsoft.Build.Utilities or one of its dependencies.`
  227. * CHANGED: Updated script for loading of the Configurator to avoid problem with old assemblies. Issue #22
  228. [v1.5.1] 2016.11.12
  229. * FIXED: Error : Invalid Option: /CVRES= Issue #20
  230. * NOTE: Our coreclr version was compiled with MSVC 14.0. Related Issue #21
  231. [v1.5] 2016.11.04
  232. * FIXED: Fixed problem with white-space chars in path: `Cannot find path '<any full path with spaces>' because it does not exist ...`
  233. * FIXED: Fixed typo with fullseq (ddNS) - incorrect `0x30 0x30` ~0x007A7-0x007A8 /details in #14
  234. * FIXED: Possible problem with NullReferenceException when removing package.
  235. * FIXED: Fixed problem with old NS data when we try to install package for project A, then for project B
  236. * NEW: Implemented 'Generate .exp + .lib via MS Library Manager' #9
  237. GUI Configurator + MSBuild property: `DllExportGenExpLib`
  238. * NEW: Added support of unmanaged-export for Executable Modules (.exe) #18
  239. * NEW: Cecil variant for ddNS features /#14, #2
  240. * NEW: Added our custom IL Assembler as option to fix incorrect 0x13 / 0x11 opcodes. #17
  241. GUI Configurator + MSBuild property: `DllExportOurILAsm`
  242. It should help for users of Fody projects, etc.
  243. https://github.com/Fody/Fody/issues/271
  244. IlAsm 4.5.1 https://github.com/3F/coreclr
  245. based on 4.5.22220.0 / coreclr 1.0.4
  246. changelog of our coreclr for this release: https://github.com/3F/coreclr/blob/master/changelog.txt
  247. * CHANGED: Updated scripts of installing/removing package for more correct loading of our assemblies.
  248. [v1.4] 2016.10.05
  249. * FIXED: Fixed bug - `An item with the same key has already been added`. Issue #10
  250. * FIXED: Bug with Meta library: Incorrect default values. Issue #16
  251. please note, the __cdecl is the default calling convention for our library
  252. as and for C and C++ programs.
  253. * FIXED?: Probably fixed bug - `Script errors on package install` Issue #6
  254. * FIXED?: Probably fixed bug - `non-English system language - syntax error` Issue #7
  255. * NEW: GUI Configurator with updated ddNS features.
  256. * NEW: Implemented feature 'Export for platform': [ x86 / x64 / x86 + x64 ] Issue #9
  257. * NEW: Implemented feature 'Base for ordinals'. Issue #11
  258. There is also alternative to configure this number - MSBuild property: DllExportOrdinalsBase
  259. * NEW: The one (1) now is used by default as Base for all ordinals.
  260. `Mimic ordinal counter (start from 1 instead of 0)` Issue #8
  261. * CHANGED: The ddNS features now as binary cmdlet `NSBin`. Use `nsbin.bat` if needed.
  262. * CHANGED: `Set "Inherited = false" in AttributeUsage for DllExportAttribute`. Issue #15
  263. * OTHER: other possible changes and fixes.
  264. [v1.3] 2016.08.21
  265. * FIXED: bug 'Incorrect library' when DllExport installed for 2+ projects.
  266. * CHANGED: DllExport now uses `Cdecl` calling convention by default.
  267. * CHANGED: Mono.Cecil v0.9.6.4
  268. [v1.2] 2016.07.13
  269. * CHANGED: dynamic definition of namespace for user scope. Issue #2
  270. [v1.1] 2016.06.29
  271. * CHANGED: DllExport now is part of System.Runtime.InteropServices as and DllImport.
  272. * CHANGED: Mono.Cecil v0.9.6.1
  273. * NEW: 0x80070005 meaning... Issue #1
  274. * NEW: +DllExport(CallingConvention convention) signature
  275. [v1.0] 2016.06.25
  276. * Initial the open release, based on v1.2.7.38850