Sign in to follow this  
Followers 0
Allow2010

DLLCall under x64

4 posts in this topic

#1 ·  Posted (edited)

Hi all,

i am trying to make wimutil (see attachment) run under x64.

For those of you who do not know what wimutil is: It an autoit script that uses dllcall to call functions of the wimgapi.dll to manage WIM files (VISTA and Windows 7 install files).

$WIMGAPI = "wimgapi.dll"
$INUMBER = 1
$WIMFILE = "z:\sources\boot.wim" 
$MOUNTPATH = "c:\test"
$RESULT = DllCall($WIMGAPI, "int", "WIMMountImage", "wstr", $MOUNTPATH, "wstr", $WIMFILE, "long", $INUMBER, "long", 0)
If $RESULT[0] = 0 Then
    MsgBox(48, "WimUtil error", "Mount error")
    Exit (3)
EndIf
Exit (0)

This code works under win32 but fails under win64.

Another attempt would be to use the com control from here http://www.autoitscript.com/gimagex/ to mount an WIM file to a folder, but i think this is not possible, or is it?

Any help would be apreciated, thanks in advance.

Markus

wimutil.zip

Edited by WPA-Fan

Share this post


Link to post
Share on other sites



OK, i already solved it without autoit but i would still like to find a way...any ideas?

Share this post


Link to post
Share on other sites

That last parameter. It's integer with you. That is "lpszTempPath" as far as I could find something about it. Change to str/wstr.

But if you say that it works with win32, I'm not sure it would help, it would be more likely that I read wrong.


♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

thanks...will try it...

i also found somewhere in the forum that we should use ptr for all types with dll call..but that did not help...

Edited by WPA-Fan

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0