diepfeile Posted March 29, 2022 Share Posted March 29, 2022 Running a program through Autoit isn't working anymore. Interestingly FileExists returns 0, yet it still works in explorer and the console normally. Cannot select it in FileOpenDialog either. It worked in the past, it's a really simple script: a button press calls the function: Func SnippingTool() Run(@WindowsDir & '\System32\SnippingTool.exe') EndFunc ;==>SnippingTool Stuff I have tried: $sFile = @WindowsDir & '\System32\SnippingTool.exe' ; not working $sFile = @WindowsDir & '\System32\SoundRecorder.exe' ; also not working $sFile = @WindowsDir & '\System32\charmap.exe' ; working ;$sFile = FileOpenDialog('',@WindowsDir & '\System32', 'Executables (*.exe)') ; not selectable here $res = Run($sFile, @WindowsDir & '\System32') MsgBox(0, $res & FileExists($sFile), $sFile) ; fileexists returns 0, yet the file should exist Is the 3.3.16.0 buggy or what am I missing? Link to comment Share on other sites More sharing options...
Nine Posted March 29, 2022 Share Posted March 29, 2022 Try with this line at the top of your script : If @OSArch = "X64" And Not @AutoItX64 Then _WinAPI_Wow64EnableWow64FsRedirection(False) HurleyShanabarger 1 “They did not know it was impossible, so they did it” ― Mark Twain Spoiler Block all input without UAC Save/Retrieve Images to/from Text Monitor Management (VCP commands) Tool to search in text (au3) files Date Range Picker Virtual Desktop Manager Sudoku Game 2020 Overlapped Named Pipe IPC HotString 2.0 - Hot keys with string x64 Bitwise Operations Multi-keyboards HotKeySet Recursive Array Display Fast and simple WCD IPC Multiple Folders Selector Printer Manager GIF Animation (cached) Screen Scraping Multi-Threading Made Easy Link to comment Share on other sites More sharing options...
Solution HurleyShanabarger Posted March 29, 2022 Solution Share Posted March 29, 2022 Guess your script is not running in X64 mode. Add #AutoIt3Wrapper_UseX64=y at the beginning of your script. Link to comment Share on other sites More sharing options...
ad777 Posted March 29, 2022 Share Posted March 29, 2022 (edited) diepfeile. try compile script as x32bit/64bit According to your Os & Run it after that. you cant Run variable with same name see below how to..: $sFile = @WindowsDir & '\System32\SnippingTool.exe' ; not working ;$sFile2 = @WindowsDir & '\System32\SoundRecorder.exe' ; also not working ;$sFile3 = @WindowsDir & '\System32\charmap.exe' ; working ;$sFile = FileOpenDialog('', @WindowsDir & '\System32', 'Executables (*.exe)') ; not selectable here Run($sFile, @WindowsDir & '\System32') ;Run($sFile2, @WindowsDir & '\System32') ;Run($sFile3, @WindowsDir & '\System32') ;MsgBox(0, $res & FileExists($sFile), $sFile) ; fileexists returns 0, yet the file should exist Edited March 29, 2022 by ad777 iam ِAutoit programmer. best thing in life is to use your Brain to Achieve everything you want. Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted March 29, 2022 Moderators Share Posted March 29, 2022 ad777, 1 minute ago, ad777 said: Try Reinstall Autoit If you say that in response to one more question it will be your last post for quite a while. While we understand that you want to be helpful, you are beginning to annoy us with your constant "Reinstall" advice in many of the threads in which you post. If you have nothing sensible to say then just do not post. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
diepfeile Posted March 31, 2022 Author Share Posted March 31, 2022 Damn, it's the x64 vs x86 again. It works in 64 bit. So much for the "x86... recommended for compatibility". How can I change the default to x64, without reinstalling? Link to comment Share on other sites More sharing options...
diepfeile Posted March 31, 2022 Author Share Posted March 31, 2022 Well, just reinstalling with default x64 without prior uninstalling seems to be the easiest fix. Link to comment Share on other sites More sharing options...
rudi Posted April 13, 2022 Share Posted April 13, 2022 @Nine If @OSArch = "X64" And Not @AutoItX64 Then _WinAPI_Wow64EnableWow64FsRedirection(False) That's what I used for some scripts quite some time ago. As the help file for this function states, it's not always working reliable. The help file embedded link to MSDN is broken, here this functionality is covered: How to make use of it and it's counterpart, Wow64RevertWow64FsRedirection, in an autoit script? https://docs.microsoft.com/en-us/windows/win32/api/wow64apiset/nf-wow64apiset-wow64disablewow64fsredirection Earth is flat, pigs can fly, and Nuclear Power is SAFE! Link to comment Share on other sites More sharing options...
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