CloudSquall
8th March 2009 05:01 UTC
CoreFLACDecoder_0.4
Hi,
A while ago i downloaded this file wwwfree-codecs.com/download/CoreFLAC_Decoder_Encoder.htm because i needed it, but then my curiosity got hold of me and i extracted the file.
What i found out was amazing, it had only a file called [NSIS].nsi and $SYSDIR folder which had the CoreFLACDecoder.ax in it.
Now this should be easy, I just compile it back again by downloading and installing NSIS, but it was harder then i thought, as am a complete noob with this thing.
When i put the script and try to compile it gives me and error.
Now i come here to seek for help and see if anyone has any idea how to fix this script:
MessageBox 4 1 6 3 0
Abort
Return
SetOutPath $SYSDIR
File CoreFLACDecoder.ax
WriteReg 2147483650 105 194 206 1
WriteReg 2147483650 105 257 273 1
WriteUninstaller $SYSDIR\CoreFLACDecoder-uninstall.exe 217092 756
RegisterDLL $SYSDIR\CoreFLACDecoder.ax DllRegisterServer 4294967258
Return
If i learn how to do this then i would use the same manner to get some of my files working like CLVSD.AX
Animaether
8th March 2009 06:24 UTC
yeahhh... that's pretty much what you get when you try to extract the script from an NSIS installer.
"MessageBox 4 1 6 3 0"
Is gobbledeegook that will make sense only if you have some fairly good hacking skills ;)
The normal script syntax is something like 'messagebox MB_OK "the message goes here" ID_YES gotoo_yes' etc.
In short - you can't recompile that script 'as is' because it isn't a valid script.
Anyway - if you just want to register an ActiveX component, why not have a peek at...
http://nsis.sourceforge.net/ActiveX_...onent_Register
Which will tell you that registering an ActiveX is no different from registering any other DLL %)
CloudSquall
8th March 2009 14:36 UTC
You see i refuse to be believe that the script in the first post just had the code:
;To Register a DLL
RegDLL "$INSTDIR\MyDLL.dll"
;To Unregister a DLL
UnRegDLL "$INSTDIR\MyDLL.dll"
to register a file like CLVSD.AX.
Simply becuase i can do it manully by copying the file to system32 and use the regsvr32 command.
But that JUST WONT work for some reason, thats why i believe there is more to it, even to get it work with Windows Media Player.
Animaether
8th March 2009 15:06 UTC
have you tried with that FLAC codec?
some codec pack...
http://74.125.77.132/search?q=cache:...ient=firefox-a
...seems to indicate that RegDll is indeed all you'd need (that is, I don't see any calls later that might be related).
Perhaps CLVSD.AX itself is the problem?
CloudSquall
8th March 2009 15:57 UTC
I see...
You might find this weird but here is the thing.
I have downloaded a codec pack which has the file CLVSD.AX and if i install the codec it works like a charm.
But if i take the same file from the same codec and try to register myself, and guess what... it JUST WONT work lol.
dont you find this weird?
Animaether
8th March 2009 16:53 UTC
depends on what else might happen when you "install the codec" :)
Comperio
8th March 2009 17:04 UTC
Well said, Animaether. :up:
In addition, I also have to wonder if in fact you are getting all the components when you extract the EXE. Decompiling an NSIS EXE file is not a build-in function of NSIS itself (requires a 3rd part program to do so), so would you really expect that the output would always dump everything correctly each time? (Perhaps there are missing files or script commands in the extraction output.)