Call DLL->GetVolumeInformation crashes Installaware

Got a problem you cannot solve? Try here.
pescetto
Posts: 3
Joined: Tue Nov 13, 2012 9:12 am

Call DLL->GetVolumeInformation crashes Installaware

Postby pescetto » Tue Nov 13, 2012 9:20 am

Hi,

This maybe simply my poor usage of the function but I am trying to determine whether the target drive is compressed or not.

I successfully call DLL Function GetDriveTypeA and it returns 3 a local drive for the $TARGET_DRIVE$ ,

Once past that I am attempting to Call DLL Function GetVolumeInformationA, which just crashes the Installaware debugger, I believe function should return FS_VOL_IS_COMPRESSED

Has anyone a simple code line that performs this action?

FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Call DLL->GetVolumeInformation crashes Installaware

Postby FrancescoT » Tue Nov 13, 2012 11:19 am

Dera User,

please try the following code:

Code: Select all

~InstallAware Clipboard Data~
~MessageBox~
~{A009B1C4-AFC3-4E4B-B9BC-089EA7D41BE2}~
~Debug~
~VOLUME_NAME = $VOLUME_NAME$$NEWLINE$VOLUME_SERIAL = $VOLUME_SERIAL$$NEWLINE$MAX_COMP_LENGTH = $MAX_COMP_LENGTH$$NEWLINE$FILESYS_FLAG = $FILESYS_FLAG$$NEWLINE$FILESYS_NAME = $FILESYS_NAME$~
~0~
~1~
~~
~Call DLL Function~
~{070B1CA7-838E-49FF-8FF1-ACAEE2CEC112}~
~Kernel32.dll,GetVolumeInformationA,bool,,"pointer to string",$VOLUME$,"allocated string buffer (MAX_PATH length)",$VOLUME_NAME$,"double word",260,"pointer to double word",$VOLUME_SERIAL$,"pointer to double word",$MAX_COMP_LENGTH$,"pointer to double word",$FILESYS_FLAG$,"allocated string buffer (MAX_PATH length)",$FILESYS_NAME$,"double word",260,$~
~mIDEFunc.dll\mEXEFunc.dll~
~Comment~
~{F8CD785E-C6C6-4D81-A337-1F37CB26B3B2}~
~~
~Set Variable~
~{89A519D3-AD18-4BA7-9CE3-899DB9D7DD1B}~
~FILESYS_NAME$MYAH$MYAH$FALSE~
~~
~Set Variable~
~{0FACE214-34AF-4F5D-9B7B-5885B5A9B7D9}~
~FILESYS_FLAG$MYAH$MYAH$FALSE~
~~
~Set Variable~
~{26CEAFE2-D4B0-4700-9A0D-B55058D3A3BE}~
~MAX_COMP_LENGTH$MYAH$MYAH$FALSE~
~~
~Set Variable~
~{34497DA9-F0C1-491A-A00A-13F56296EBF5}~
~VOLUME_SERIAL$MYAH$MYAH$FALSE~
~~
~Set Variable~
~{76B3F8B2-1572-4735-94B9-E919D4B084EF}~
~VOLUME_NAME$MYAH$MYAH$FALSE~
~~
~Set Variable~
~{D875446D-FC8A-4B84-88C7-C1CC1A8BBD5D}~
~VOLUME$MYAH$MYAH$FALSE~
~C:\~


Please note that the returned value for "lpFileSystemFlags" parameter will be in Decimal numeric format

Hope this helps you.

Regards
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE

pescetto
Posts: 3
Joined: Tue Nov 13, 2012 9:12 am

Re: Call DLL->GetVolumeInformation crashes Installaware

Postby pescetto » Tue Nov 13, 2012 2:07 pm

It helps a lot, thank you very much

FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Call DLL->GetVolumeInformation crashes Installaware

Postby FrancescoT » Wed Nov 14, 2012 8:26 am

:D :D :D
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE


Return to “Technical Support”

Who is online

Users browsing this forum: No registered users and 89 guests