KiZsLeG 0 Posted July 11, 2013 Share Posted July 11, 2013 Hello Guys, Just want to ask for help or guidance on why DllCall doesn't work with LoadLibrary but it works using the function _WinAPI_LoadLibrary. What's wrong with my DLLCall. #include <WinAPI.au3> ;local $module = _WinAPI_LoadLibrary("user32.dll") ; Working Local $module = DllCall("Kernel32.dll", "Ptr", "LoadLibrary", "Str", "user32.dll") ; Not Working if ($module) Then msgbox(0,"Success","Success!") Else MsgBox(0,"Failed", "Failed!") EndIf Thanks, Link to post Share on other sites
water 2,720 Posted July 11, 2013 Share Posted July 11, 2013 You need to extend the error checking of your script. What is the value of @error after DllCall? My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to post Share on other sites
KiZsLeG 0 Posted July 11, 2013 Author Share Posted July 11, 2013 The value is 0 sir. Link to post Share on other sites
Solution Malkey 244 Posted July 11, 2013 Solution Share Posted July 11, 2013 The DllCall function returns an array. #include <WinAPI.au3> Local $module = _WinAPI_LoadLibrary("user32.dll") ; Working ConsoleWrite($module & @LF) Local $module = DllCall("Kernel32.dll", "Ptr", "LoadLibrary", "Str", "user32.dll") ; Not Working ConsoleWrite($module[0] & @LF) If $module[0] Then MsgBox(0, "Success", "Success!") Else MsgBox(0, "Failed", "Failed!") EndIf Link to post Share on other sites
water 2,720 Posted July 11, 2013 Share Posted July 11, 2013 As DllCall returns an array I would check for an array: #include <WinAPI.au3> Local $module = _WinAPI_LoadLibrary("user32.dll") ; Working ConsoleWrite($module & @LF) Local $module = DllCall("Kernel32.dll", "Ptr", "LoadLibrary", "Str", "user32.dll") ; Not Working ConsoleWrite($module[0] & @LF) If IsArray($module) Then MsgBox(0, "Success", "Success!") Else MsgBox(0, "Failed", "Failed!") EndIf This is sensible because Autoit will support empty arrays with the next version. My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to post Share on other sites
KiZsLeG 0 Posted July 11, 2013 Author Share Posted July 11, 2013 Thanks for the answer Mr. Malkey and Water. Link to post Share on other sites
water 2,720 Posted July 11, 2013 Share Posted July 11, 2013 My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to post Share on other sites
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now