-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How do I add DLLs to a package? #271
Comments
Do you have a large number of DLLs? If it is less than a handful or some reasonable number to manually manage, then the Did you try the XML code in my comment here? After executing the <!-- ... --->
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='$(var.PlatformProgramFilesFolder)' Name='PFiles'>
<Directory Id='APPLICATIONFOLDER' Name='project-name'>
<!-- In the most basic form, you can place the DLLs in the same
folder as the EXE; otherwise, put them in another folder. I just don't know the
DLL loading process for Rust EXEs. The DLLs may need to be in the same folder. -->
<Directory Id='Bin' Name='bin'>
<!-- ... --->
<!-- Repeat the next <component> block for each DLL making sure
the `Source` attribute is the path to the DLL and you change the ID
and Name accordingly. -->
<Component Id='gtk4' Guid='*' Win64='$(var.Win64)'>
<File
Id='gtk4Dll'
Name='gtk4.dll'
DiskId='1'
Source='target\gtk4\gtk4.dll'
KeyPath='yes'/>
</Component>
<!-- ... --->
</Directory>
</Directory>
</Directory>
</Directory>
<!-- ... ---> Can you provide a layout of your project structure and your I would recommend placing the DLLs in some location under your project structure, like a |
There is 42 files right now and since they come from GTK4 that is evolving I have no guarantees set of files or their names will remain constant.
Not yet, I was looking for an automated way to not list all the files explicitly due to above mentioned reasons.
Since I primarily want to do packaging in CI I create |
There are #161 and #140, but they are not really that helpful, everyone is so cryptic about how to actually do it that I wasn't able to get it to work after spending hours.
What I have is an app that depends on GTK4. So I copied all DLLs into a separate directory
target\gtk4
, ran this command to getgtk4.wxs
:And then did
cargo wix --include .\target\gtk4\gtk4.wxs
and... nothing happened, meaning no DLLs were included, size of themsi
file is the same, zero errors with--nocapture
either.So the question still remains: how do I add DLLs to a package? I'd really appreciate some help since I'm thankfully not dealing with Windows almost at all and unfortunately have no experience with such tools.
The text was updated successfully, but these errors were encountered: