Skip to content
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

Fixing an issue that when plugin *.dll file is deleted - it will not be reinstalled - making the file to be using KeyPath instead of registry entry #186

Open
wants to merge 1 commit into
base: 2.0
Choose a base branch
from

Conversation

wojwal
Copy link
Member

@wojwal wojwal commented Feb 2, 2017

Hi Richard,

I have some complains from users that their plugins didn't work... In case they manually delete plugin DLL file - and later tried to install MSI again - it's not reinstalling the component which includes DLL file. Basically they went and deleted all files themselves - leaving all other things like Registry untouched.

The reason is that "KeyPath" is made for registry entry - so only if that one is removed it would reinstall it.

I've already solved all other files in my custom WXS so that each file is separate component with "KeyPath=yes" - but the DLL file is inside auto-generated WXS file.

Applying a change for Wix Templates.

Not commiting directly to FB 2.0 branch - just wanted to make sure you are OK with it ;)

@taxilian
Copy link
Member

taxilian commented Feb 4, 2017

This should work fine w/ HKLM, but HKCU usually installs to the user profile directory and you can't use a file in the user profile directory as a KeyFile, which is why it's done the way it's done.

I'm open to other suggestions :-/ Unfortunately this will break a per-user install.

@wojwal
Copy link
Member Author

wojwal commented Feb 6, 2017

Intresting... I'm using HKLM myself - and I didn't realize KeyPath doesn't work for files in user profile.

I'll try that - if that will not work... I'll remove HKCU change.

But I guess this issue is far more probable for HKLM - some users tends to go to C:\Program Files\ and delete files... While I guess avarage user will not be able to find his own profile directory - since that's hidden by default.

…be reinstalled - making the file to be using KeyPath instead of registry entry
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants