-
-
Notifications
You must be signed in to change notification settings - Fork 134
DllExport Manager
DllExport
-help
Note the manager from a regular CI build points to a stable public package which was based on. Control it using -server
or -pkg-link
keys or use generated offline packages.
Since DllExport Manager is based on hMSBuild (built-in +-> GetNuTool) you can configure and control distribution easily using -server
and -pkg-link
keys.
For both commands you must specify either hostname or IPv4 or IPv6 (via square brackets, like http://[::1]
) for specified protocol:
- Over http:
http://
server/,https://
server/ - Over ftp:
ftp://
server/,ftp://
usr@server/,ftp://
usr:pwd@server/ - Over URL File Format:
file:///
D:/path/
The key -pkg-link
allows direct linking to package without nuget server, for example:
DllExport -pkg-link <link_to_.nupkg>
It also supports local paths:
- absolute:
D:/path/
,D:\path\
,D:\\path\\
, ... - relative:
../path/
,..\..\path\
, ...
For example:
DllExport -pkg-link D:/path/DllExport.1.8.0.nupkg
Use -proxy
(1.6.1+) key to set up communication via a proxy server using the following format:
[usr[:pwd]@]host[:port]
For example:
- -proxy
10.0.2.15
... - -proxy
guest:[email protected]:7428
...
Modern releases provides offline versions in addition to typical use. The offline versions are not requires internet connection at all. Everything was configured to use it in local builds or such.
But please note: this is not recommended as you need to keep the entire package (.dll, .exe, ...) permanently with your project and manually monitor and upgrade up to future releases etc.
But if you prefer it this way: Unpack all from latest offline.DllExport...zip (Deflate compression algorithm) into solution folder; Then follow the same steps as for the regular version (some commands related to online version cannot be applied to offline package).
-action Configure
is the default action for 1.6.3+ [?].
To install/uninstall or to reconfigure your projects:
DllExport -action Configure [server|version|pkg-link]
Details and options (screencast): https://www.youtube.com/watch?v=sBWt-KdQtoc
Note: starting with 1.7-RC you can also use GUI updater
To update an already configured version with a new package:
DllExport -action Update [server|version|pkg-link]
Note: some keys like -force
, -mgr-up
, ... will also be saved for Restore cases with the default (or predefined) keys. This is why it may be preferable to use the Upgrade
action instead of Update
.
Force upgrading together with manager (recommended by default):
DllExport -action Upgrade [server|version|pkg-link]
For example: DllExport
-action Upgrade -dxp-version 1.8.0
To manually restore package (restored automatically during any build operation by *default):
DllExport -action Restore
*To disable automatic restoring during build, configure with -no-mgr
.
All received packages are cached by default. This is a feature of GetNuTool.
In case you want to get the same (by number or ID) version with another build, you should first delete the cached. For example: rmdir /S/Q packages\DllExport
.
Starting with 1.6.1+ you can use -force
key to remove it automatically, for example:
DllExport -mgr-up -force -dxp-version 1.8.0
Use -build-info
& -version
keys to understanding what is actually being used at the moment.
DllExport 1.6.1+ provides also Export / Recover / Unset
actions for more portable and self-repairing configuration. This helps to achieve even more flexibility, such as in build systems with CMake, perform backups, and also quickly automatically fix broken references and other related to automation things.
(optional) To manually prepare external storage use: DllExport -action Configure
- [Data] - select .net.dllexport.targets
. After that, configure what you need for your project, and then [Apply]. In order to return it back, select `Project files (.csproj, ...).
The action will create a new or update an existing external storage that was described above.
DllExport -action Export
The action will attempt to restore all missing references in your projects using the external storage described above.
For a pure unconfigured solution this should be considered as an Import feature.
To recover or re-configure projects using links to external storage:
DllExport -action Recover
1.8+ To recover or re-configure projects to initial setup (project files .csproj etc.):
DllExport -action RecoverInit
The action will uninstall DllExport tool for specific projects according to external storage that was described above.
This will not affect the external storage itself that means after you will be able to use it again with Recover
actions.
DllExport -action Unset
Modern DllExport 1.8 contains built-in hMSBuild (with built-in GetNuTool) which helps to solve a whole range of tasks as a single solution. To access it:
DllExport -GetNuTool {arguments to GetNuTool}
DllExport -hMSBuild {arguments to hMSBuild}
Use DllExport -hMSBuild -help
or visit its page. The documentation for GetNuTool is here.
For example, build_and_run.cmd from BasicExport:
call .\DllExport -hMSBuild -t:restore -t:Build ~c Debug ~p x64
cd bin\x64\Debug\ & cls & UnmanagedCppConsole.exe & dir & pause
To configure events-actions for projects using vsSolutionBuildEvent:
DllExport -GetNuTool vsSolutionBuildEvent/1.16.1:../SDK & SDK\GUI
etc.
To update DllExport version up to 1.8.0 for already configured projects together with manager:
DllExport -action Upgrade -dxp-version 1.8.0
To update manager up to 1.8.0 then configure in the Wizard:
DllExport -mgr-up -dxp-version 1.8.0
DllExport -pkg-link https://ci.appveyor.com/api/buildjobs/bbpuyu6crqjrmfny/artifacts/bin/Release/DllExport.1.7.4.nupkg
Copy of 1.8+f4deb0e
.NET DllExport 1.8.0.17264+f4deb0e
Copyright (c) 2009-2015 Robert Giesecke
Copyright (c) 2016-2025 Denis Kuzmin <[email protected]> github/3F
MIT License
https://github.com/3F/DllExport
Usage: DllExport [keys] or built-in [-GetNuTool ... or -hMSBuild ...]
Keys
----
-action {type} - Specified action for Wizard. Where {type}:
* Configure - To configure DllExport for specific projects.
* Update - To update pkg reference for already configured projects.
* Restore - To restore configured DllExport.
* Export - To export configured projects data.
* Recover - To re-configure projects using predefined data.
`RecoverInit` to initial setup.
* Unset - To unset all data from specified projects.
* Upgrade - Aggregates an Update action with additions for upgrading.
-sln-dir {path} - Path to directory with .sln files to be processed.
-sln-file {path} - Optional predefined .sln file to be processed.
-metalib {path} - Relative path to meta library.
-metacor {path} - Relative path to meta core library.
-dxp-target {path} - Relative path to entrypoint wrapper of the main core.
-dxp-version {num} - Specific version of DllExport. Where {num}:
* Versions: 1.7.4 ...
* Keywords:
`actual` - Unspecified local/latest remote version;
( Only if you know what you are doing )
-msb {path} - Full path to specific MSBuild Tools.
-hMSBuild {args} - Access to hMSBuild (built-in) https://github.com/3F/hMSBuild
-packages {path} - A common directory for packages.
-server {url} - Url for searching remote packages.
-proxy {cfg} - To use proxy. The format: [usr[:pwd]@]host[:port]
-pkg-link {uri} - Direct link to package from the source via specified URI.
-force - Aggressive behavior, e.g. like removing pkg when updating.
-no-mgr - Do not use DllExport for automatic restore the remote package.
-mgr-up - Updates DllExport to version from '-dxp-version'.
-wz-target {path} - Relative path to entrypoint wrapper of the main wizard.
-pe {args} - To work with PE32/PE32+ module. -pe -help
-eng - Try to use english language for all build messages.
-GetNuTool {args} - Access to GetNuTool (built-in) https://github.com/3F/GetNuTool
-debug - To show additional information.
-version - Displays version for which (together with) it was compiled.
-build-info - Displays actual build information from selected DllExport.
-help - Displays this help. Aliases: -help -h /h -? /?
Flags
-----
__p_call - To use the call-type logic when invoking DllExport
Samples
-------
DllExport -action Configure -force -pkg-link https://host/v1.7.4.nupkg
DllExport -action Restore -sln-file "Conari.sln"
DllExport -proxy guest:[email protected]:7428 -action Configure
DllExport -pe -list-all -hex -i bin\regXwild.dll
DllExport -mgr-up -dxp-version 1.7.4
DllExport -action Upgrade -dxp-version 1.7.4
DllExport -GetNuTool "Conari;regXwild;Fnv1a128"
DllExport -hMSBuild ~x ~c Release
DllExport -GetNuTool vsSolutionBuildEvent/1.16.1:../SDK & SDK\GUI
Except where otherwise noted, wiki content is licensed under a Creative Commons Attribution 4.0 International License. (CC BY 4.0).
🗎
- 🗎 Home
- 🚀 Quick start
- 🗎 .Net Core
- 🗎 Export
- 🗎 Pre-processing
- 🗎 Conari
- 🗎 ILMerge & ILRepack
- 🗎 [x]AssemblyResolve
- 🗎 Post-processing
- 🗎 Examples
- 🗎 C++ and C# ([+]📹)
- 🗎 string & struct ([+]📹)
- 🧪 Demo
🗔
📂
- 🔍 Q / A