Tags: rjk11111/DllExport
Tags
Public final v1.6 release of the .NET DllExport: * NEW: The new embeddable lightweight manager for distribution via MvsSln & GetNuTool projects. Issue 3F#38. Based on hMSBuild logic and includes GetNuTool core v1.6.1. Now you shouldn't use standard nuget clients anymore: https://www.youtube.com/watch?v=9bYgywZ9pPE Quick start: https://www.youtube.com/watch?v=sBWt-KdQtoc ============================== DllExport -action Configure ============================== Package from nuget.org already contains manager, but you can also get it directly. Latest manager: https://3F.github.io/DllExport/releases/latest/manager/ ~18 Kb text-based embeddable batch-script that does not require powershell and dotnet-cli. Automatic restoring still is available but you can also use: `DllExport -action Restore` All available features: `DllExport -h` Direct links to remote package (without nuget server) via `-pkg-link {uri}` key. Issue 3F#53. NuGet Server by default: nuget.org. * NEW: The new Wizard (configurator via MvsSln). To easy configure your projects in any place. Part of Issue 3F#38. MvsSln v2.0: https://github.com/3F/MvsSln * NEW: Added support of empty/global namespaces - Issue 3F#47. Use `Direct-Mod` if Cecil will not process this correctly. * NEW: Implemented another storage for configuration: '.net.dllexport.targets'. Issue 3F#49. * NEW: New settings for configurator (Wizard): * Path to custom ILAsm. * Flag to keep intermediate Files (IL Code, Resources, ...). * Timeout of execution in milliseconds. * NEW: Implemented automatic checking existence of a correct exported proc via Conari. Issue 3F#55. Wizard controls it via `$(DllExportPeCheck)`: * 0x01 bit - Will check count of all planned exports from final PE32/PE32+ module. * 0x02 bit - Will check existence of all planned exports (IL code) in actual PE32/PE32+ module. * NEW: Implemented PE32/PE32+ Viewer to check manually available exports from final modules. Issue 3F#55. New key for manager: ``` -pe-exp-list {module} - To list all available exports from PE32/PE32+ module. ``` Sample: ``` DllExport -pe-exp-list bin\Debug\regXwild.dll ``` * FIXED: Fixed target platform detection. Issue 3F#34. Details: 3F#34 (comment) * FIXED: Fixed problem when the Post-Build event is triggered before our tool. Issue 3F#35. Use this if still is needed: ``` <Target Name="PostBuildEventBeforeDllExport" BeforeTargets="DllExportMod"> ... </Target> ``` * FIXED: Fixed generation of exp + .lib via MS Library Manager for VS2017. Issue 3F#37. Now it also includes processing through VsDevCmd & VcVarsAll initializer scripts. Use the folowing msbuild properties to override values by default: * $(DllExportVcVarsAll); $(DllExportVsDevCmd) * FIXED: Fixes possible problem with multiple properties that contains *Undefined* word, e.g.: *Undefined*\path1;C:\path2 ... * CHANGED: Added information about finding lib tool. Issue 3F#44. * CHANGED: UI. Selected platform now affects to all configurations of project instead of active as before. * CHANGED: Now nuget package does not contain library in `lib/.../` Details in 3F#36. * CHANGED: Now we also distribute .zip package for work through our manager etc. https://github.com/3F/DllExport/releases * NOTE: How to avoid EXP0014: RunIlAsm. The library manager still cannot be found. https://www.youtube.com/watch?v=zUejJ4vUPGw Related Issue 3F#44 * NOTE: Quick start (Configuring, Automatic restoring, Pe-Viewer): https://www.youtube.com/watch?v=sBWt-KdQtoc * NOTE: The latest text-based manager: https://3F.github.io/DllExport/releases/latest/manager/ Other versions you can find from GitHub Releases: * https://github.com/3F/DllExport/releases Or get it from nuget packages starting with v1.6+ * NOTE: PE-features via Conari v1.3.0 https://github.com/3F/Conari * KNOWN: Bug when - "Build successful but methods are not exported." Issue 3F#59 For today, anyone else may also try to use https://github.com/3F/Conari to avoid similar @Genteure's problem. * DIFF(v1.6-RC): * FIXED: Wizard. Fixed incorrect layout for zh_CN Simplified Chinese (Thanks @Genteure). Issue 3F#61 * FIXED: Fixes automatic restoring the package via msbuild. Issue 3F#62
Release-Candidate v1.6-RC * FIXED: Avoids crashes when project cannot be loaded for some reasons. Issue 3F#56 * FIXED: Fixed usage of manager outside the Solution directory. * FIXED: Fixed restoring package when using `-pe-exp-list` command. * NEW: Added `-mgr-up` key. Will update manager to version from '-dxp-version'. * NOTE: Thanks for your feedback. Now we're ready for release v1.6, soon. Please check release-candidate as carefully as possible. Start with: ============================== DllExport -action Configure ============================== https://3F.github.io/DllExport/releases/latest/manager/ https://www.youtube.com/watch?v=okPThdWDZMM&t=46s
Public beta3 release of the .NET DllExport - v1.6-beta3: * NEW: Implemented another storage for configuration: '.net.dllexport.targets'. Issue 3F#49. * NEW: Implemented automatic checking existence of a correct exported proc via Conari. Issue 3F#55. Wizard controls it via `$(DllExportPeCheck)`: * 0x01 bit - Will check count of all planned exports from final PE32/PE32+ module. * 0x02 bit - Will check existence of all planned exports (IL code) in actual PE32/PE32+ module. * NEW: Implemented PE32/PE32+ Viewer to check manually available exports from final modules. Issue 3F#55. New key for manager: ``` -pe-exp-list {module} - To list all available exports from PE32/PE32+ module. ``` Sample: ``` DllExport -pe-exp-list bin\Debug\regXwild.dll ``` * NEW: Implemented `-pkg-link {uri}` key for DllExport manager. Issue 3F#53. * NEW: New settings for Wizard: * Path to custom ILAsm. * Flag to keep intermediate Files (IL Code, Resources, ...). * Timeout of execution in milliseconds. * CHANGED: Updated MvsSln v2.0. Full changelog: https://github.com/3F/MvsSln/blob/master/changelog.txt * NOTE: PE-features via Conari v1.3.0 https://github.com/3F/Conari
Public beta2 release of the .NET DllExport - v1.6-beta2: * NOTE: This release contains trivial fixes only for our manager because of problems with nuget.org. Issue 3F#38. Please read all changes in previous beta release and please note again - you shouldn't use standard nuget clients anymore: https://www.youtube.com/watch?v=okPThdWDZMM Test and comment anything about this in Issue 3F#38 if you need. * FIXED: Updated GetNuTool v1.6.1 to fix problems with possible incorrect CRC & Compressed size info from nuget.org. Changelog here: https://github.com/3F/GetNuTool/blob/master/changelog.txt Related issues: * 3F/GetNuTool#3 * 3F#38 (comment) * CHANGED: Changed url to get latest manager directly. Please use this if you need: * https://3F.github.io/DllExport/releases/latest/manager/ Other versions you can find from GitHub Releases: * https://github.com/3F/DllExport/releases Or get it from nuget packages starting with v1.6+
Public beta release of the .NET DllExport - v1.6-beta: * NEW: The new lightweight manager & distribution via MvsSln & GetNuTool projects. Issue 3F#38. Based on hMSBuild logic and includes GetNuTool core. Now you shouldn't use standard nuget clients anymore: https://www.youtube.com/watch?v=okPThdWDZMM Package from nuget.org already contains this, but you can also get it directly. Latest version: https://raw.githubusercontent.com/3F/DllExport/latest/manager/DllExport.bat ~18 Kb text-based embeddable batch-scripts that does not require powershell and dotnet-cli. To install/uninstall or to reconfigure your projects: `DllExport -action Configure` To manually restore package: `DllExport -action Restore` All available features: `DllExport -h` Server by default - nuget.org * NEW: The new Wizard (configurator via MvsSln). To easy configure your projects in any place. Issue 3F#38. MvsSln v1.0.1.43422: https://github.com/3F/MvsSln * NEW: Added support of global namespaces - Issue 3F#47. Use `Direct-Mod` if Cecil will not process this correctly. * FIXED: Fixed target platform detection. Issue 3F#34. Details: 3F#34 (comment) * FIXED: Fixed problem when the Post-Build event is triggered before our tool. Issue 3F#35. Use this if still is needed: ``` <Target Name="PostBuildEventBeforeDllExport" BeforeTargets="DllExportMod"> ... </Target> ``` * FIXED: Fixed generation of exp + .lib via MS Library Manager for VS2017. Issue 3F#37. Now it also includes processing through VsDevCmd & VcVarsAll initializer scripts. Use the folowing msbuild properties to override values by default: * $(DllExportVcVarsAll); $(DllExportVsDevCmd) * FIXED: Fixes possible problem with multiple properties that contains *Undefined* word, e.g.: *Undefined*\path1;C:\path2 ... * CHANGED: Added information about finding lib tool. Issue 3F#44. * CHANGED: UI. Selected platform now affects to all configurations of project instead of active as before. * CHANGED: Now, nuget package does not contain library in `lib/.../` Details in 3F#36. * CHANGED: Now, we also distribute .zip package for work through our manager etc. https://github.com/3F/DllExport/releases The latest text-based manager you can find here: https://raw.githubusercontent.com/3F/DllExport/latest/manager/DllExport.bat Illustration here: https://www.youtube.com/watch?v=okPThdWDZMM
public release of the .NET DllExport - v1.5.2: * FIXED: Failing to compile in VS2017. Issue 3F#29 `Error The "DllExportAppDomainIsolatedTask" task failed unexpectedly. System.ArgumentException: Requested value 'Version46' was not found.` * FIXED: Possible error `Could not load file or assembly Microsoft.Build.Utilities or one of its dependencies.` * CHANGED: Updated script for loading of the Configurator to avoid problem with old assemblies. Issue 3F#22
public release v1.5
* FIXED: Fixed problem with white-space chars in path: `Cannot find path '<any full path with spaces>' because it does not exist ...`
* FIXED: Fixed typo with fullseq (ddNS) - incorrect `0x30 0x30` ~0x007A7-0x007A8 /details in 3F#14
* FIXED: Possible problem with NullReferenceException when removing package.
* FIXED: Fixed problem with old NS data when we try to install package for project A, then for project B
* NEW: Implemented 'Generate .exp + .lib via MS Library Manager' 3F#9
GUI Configurator + MSBuild property: `DllExportGenExpLib`
* NEW: Added support of unmanaged-export for Executable Modules (.exe) 3F#18
* NEW: Cecil variant for ddNS features /3F#14, 3F#2
* NEW: Added our custom IL Assembler as option to fix incorrect 0x13 / 0x11 opcodes. 3F#17
GUI Configurator + MSBuild property: `DllExportOurILAsm`
It should help for users of Fody projects, etc.
Fody/Fody#271
IlAsm 4.5.1 https://github.com/3F/coreclr
based on 4.5.22220.0 / coreclr 1.0.4
changelog of our coreclr for this release: https://github.com/3F/coreclr/blob/master/changelog.txt
* CHANGED: Updated scripts of installing/removing package for more correct loading of our assemblies.
public release v1.4
* FIXED: Fixed bug - `An item with the same key has already been added`. Issue 3F#10
* FIXED: Bug with Meta library: Incorrect default values. Issue 3F#16
please note, the __cdecl is the default calling convention for our library
as and for C and C++ programs.
* FIXED?: Probably fixed bug - `Script errors on package install` Issue 3F#6
* FIXED?: Probably fixed bug - `non-English system language - syntax error` Issue 3F#7
* NEW: GUI Configurator with updated ddNS features.
* NEW: Implemented feature 'Export for platform': [ x86 / x64 / x86 + x64 ] Issue 3F#9
* NEW: Implemented feature 'Base for ordinals'. Issue 3F#11
There is also alternative to configure this number - MSBuild property: DllExportOrdinalsBase
* NEW: The one (1) now is used by default as Base for all ordinals.
`Mimic ordinal counter (start from 1 instead of 0)` Issue 3F#8
* CHANGED: The ddNS features now as binary cmdlet `NSBin`. Use `nsbin.bat` if needed.
* CHANGED: `Set "Inherited = false" in AttributeUsage for DllExportAttribute`. Issue 3F#15
* OTHER: other possible changes and fixes.
PreviousNext