Hi all, the problem occurs with every dllcall that to do with the Extract Cab file, both Setupapi & AdvPack, here is an example using AdvPack
the point is that the GUi crashes (when archive Cab and a little big, example ..\WinXPCD\I386\DRIVER.CAB), however the process of extract file, proceed right, on his own
sorry for my english
Ciao.
[ autoit ]
#include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Local $Form, $Button1, $nMsg, $Test $Form1 = GUICreate("Test", 472, 210, 259, 207) $Button1 = GUICtrlCreateButton("Test", 56, 56, 353, 81) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 ;; example "..\WinXPCD\I386\DRIVER.CAB" $Test = FileOpenDialog("Cab Files", @DesktopDir, "Cab Files (*.cab;*.*_;*.*$)", 1) If Not @Error Then DirCreate(StringLeft($Test, StringInStr($Test, ".", 1, -1) - 1)) Local $ExtractFilesW = DllCall("AdvPack.DLL", "LONG", "ExtractFilesW", "wstr", $Test, "wstr", StringLeft($Test, StringInStr($Test, ".", 1, -1) - 1), "DWORD", 0, "ptr", 0, "ptr", 0, "DWORD", 0) ;Local $ExtractFiles = DllCall("AdvPack.DLL", "LONG", "ExtractFiles", "str", $Test, "str", StringLeft($Test, StringInStr($Test, ".", 1, -1) - 1), "DWORD", 0, "ptr", 0, "ptr", 0, "DWORD", 0) EndIf EndSwitch WEnd
the point is that the GUi crashes (when archive Cab and a little big, example ..\WinXPCD\I386\DRIVER.CAB), however the process of extract file, proceed right, on his own
sorry for my english
Ciao.