質問

I have a 64bit dll which i'm able to register from command prompt with regsvr32. But the problem is when i try to register my dll through nsis script its not registered. I used RegDLL command in nsis script. Anyone knows what the problem may be?

役に立ちましたか?

解決

you could use rundll32.exe instead:

ExecWait '"$SYSDIR\rundll32.exe" $INSTDIR\mydll.dll DllRegisterServer'

rundll32.exe is smart enough to launch the 64bit version of itself if you run it with a 64bit dll

他のヒント

RegDLL is known to be problematic in anything but the simplest scenarios. Google site:forums.winamp.com nsis for examples.

To make sure that registration of your DLL, type library, BHO, etc occurs successfully, you should use InstallLib. It provides an option for x64 library installation (plus more!)

See http://nsis.sourceforge.net/Docs/AppendixB.html#B.1 for more details about library installation with NSIS.

ExitWait not found NSIS script. ExitWait instead ExecWait.

you cound use:

ExecWait '"$SYSDIR\rundll32.exe" $INSTDIR\mydll.dll DllRegisterSe

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top