My installer has to copy certain 32-bit and 64-bit communication DLLs to both Windows\System32 and Windows\SysWow64 when we run installer on Windows 64-bit. Then, at <postinstall>, I have to explicitly remove them from uninstaller, so that they remain on user machine, for the use by other applications in our "family" of products. When I install those files on 64-bit system, I specify destination using BitRock's built-in variable "windows_folder_system" to copy 64-bit DLLs to Windows\System32, and then use the same built-in variable "windows_folder_system" in combination with "<wow64FsRedirection>enable</wow64FsRedirection>" to place 32-bit DLLs into Windows\SysWOW64. At <postinstallation> step I need to somehow, using "windows_folder_system", tell uninstaller to not remove files in both Windows\System32 and Windows\SysWow64. I hesitate to use hard-coded path of "C\Windows\...", but rather use built-in vars. What would be the best approach to accomplish this, please?
Note: I read your post at http://answers.bitrock.com/questions/293/how-can-i-point-to-windows-specific-folders,
asked 13 Dec '12, 19:50
I believe your solution about using <wow64fsredirection>enable</wow64fsredirection> should work fine. What I would recommend to avoid removing the libraries from the uninstaller would be to unpack the libraries to a temporary directory (either a subdirectory under
We have also fixed the link to the csidl page. Thanks for reporting it.
answered 14 Dec '12, 04:40