KrisTaracad Posted April 29, 2016 Share Posted April 29, 2016 Hello we recently migrated off our old fileserver and moved everything over to a new file server (under another name) so rather than \\fp1 the server is now \\fp2 we have a script (i'm very new to autoit) that we use that is still pointing to the old server. how do i go about updating where it looks? the exe file seems to reference an AU3 file that seems to reference a txt file all in the same location. i need assistance on this asap Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 29, 2016 Moderators Share Posted April 29, 2016 KrisTaracad, Welcome to the AutoIt forums. If that is the only change than just altering all instances of \\fp1 within the script file you use to create the executable to \\fp2 should do the trick. 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...
KrisTaracad Posted April 29, 2016 Author Share Posted April 29, 2016 I'm not sure how to create the executable. the current executable file is using a really old version of autoit which can't be changed for us as it is used by everyone and no one likes change. Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 29, 2016 Moderators Share Posted April 29, 2016 KrisTaracad, An AutoIt executable does not use the external AutoIt interpreter to run - it is self-contained. Do you have the original source file? 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...
KrisTaracad Posted April 29, 2016 Author Share Posted April 29, 2016 I'm not sure what source files look like. i have a bunch of au3 files. what should i look for? Link to comment Share on other sites More sharing options...
alien4u Posted April 29, 2016 Share Posted April 29, 2016 Just now, KrisTaracad said: I'm not sure what source files look like. i have a bunch of au3 files. what should i look for? Here you have serious problems my friend, you should find an IT Specialist to help you. Regards Alien. Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 29, 2016 Moderators Share Posted April 29, 2016 KrisTaracad, if you send them all to me via PM (look for the "envelope" icon at top right of the page) I will take a look and see if I can do anything. 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...
KrisTaracad Posted April 29, 2016 Author Share Posted April 29, 2016 Hi M23 sorry for messaging you directly. so i was able to use the converter to generate the executable file but i get an error message when launching the exe file that says --------------------------- AutoIt Error --------------------------- Line 0: Case $SIDTYPEUSER Error: "Case" statement with no matching "Select" statement. --------------------------- OK --------------------------- do you think something is wrong with my source au3 file? Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 29, 2016 Moderators Share Posted April 29, 2016 KrisTaracad, Indeed I do! As I suggested before, PM me the file (or post it here if you prefer - see here how to do it - and I will take look. 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...
KrisTaracad Posted April 29, 2016 Author Share Posted April 29, 2016 i fear the au3 file i'm using to compile is an old one using an older version of the scripting software and some of the commands used in it are no longer working with version 3 of the software which is what I installed to convert it I'll wait for your response M23 Link to comment Share on other sites More sharing options...
KrisTaracad Posted April 29, 2016 Author Share Posted April 29, 2016 I feel that the include au3 files I have setup are not working correctly. I am going to see if i can download the correct include files Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted April 29, 2016 Moderators Share Posted April 29, 2016 KrisTaracad, 1 hour ago, KrisTaracad said: i fear the au3 file i'm using to compile is an old one using an older version of the scripting software and some of the commands used in it are no longer working with version 3 of the software which is what I installed to convert it 53 minutes ago, KrisTaracad said: I feel that the include au3 files I have setup are not working correctly. The file you PMed me looks fine - the syntax is correct and definitely v3 while the include files look to be the standard ones, although that script requires almost none of them. But that script did not produce the error you mentioned above as there is no "Case $SIDTYPEUSER" line within it. And it does not appear to reference any other AutoIt script files - so I am at a loss how to explain the error you received. Why do you say that it seems to "reference an AU3 file that seems to reference a txt file all in the same location"? 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...
KrisTaracad Posted April 29, 2016 Author Share Posted April 29, 2016 The AU3 file that i used to source the compile has a variable that references a database.txt so i dont know if that line i have in the source file is accurate. so are you able to open the application with no issue? Kris Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted May 1, 2016 Moderators Share Posted May 1, 2016 Kristaracad, I have spent the day trying to understand the script and I now think I have a good grasp of most of what is going on inside. There are 3 HotKeys: "Build_Database": This creates the database.txt file which is a list of all the files on the defined path of the server, the current copy of which is read into the script on start. "Excel": This checks whether the content of the clipboard (evidently expected to be from an Excel spreadsheet) is the name of a file in the database and displays any similar names on different paths. "Replace": This is more complex and depending on the clipboard content will either: Excel - do as above and then place the chosen file path in the clipboard; AutoCAD - do much as above but also prepare an AutoCAD xref command which is written to an Update. lsp file (deleting the old version). I have rewritten the script to use some of the newer functions available in the latest AutoIt version - which significantly speeds up the execution on my machine - as well as streamlining a lot of the "stripping" code. You will need my Toast UDF (look in my sig for the link) which I have used in place the previous ProgressOn/Off commands - they were fed from within the old functions that have been replaced. All you need to do is check that the various paths are correctly set in the $sRoot, $sDatabase & $sPassOut variables and reinstate the $sClipboard = ClipGet() lines at the start of the Excel & Replace functions. I modified those sections for testing as you can see here: expandcollapse popup#include <GUIConstantsEx.au3> #include <File.au3> #include "Toast.au3" HotKeySet("^!x", "Excel") ;Ctrl-Alt-c HotKeySet("^!c", "Replace") ;Ctrl-Alt-c HotKeySet("^!b", "Build_Database") ;ctrl-alt-b ;~ Global $sRoot = "\\Server1\Design-Engineering" ;Global $sRoot = "\\3gdc01\DesignENG" Global $sRoot = @ScriptDir ;Global $sDatabase = "\\3gdc01\DesignENG\AutoIt\FileFind\Database.txt" ;Global $sDatabase = "\\3gdc01\designeng\AutoIt\FileFind\Database.txt" Global $sDatabase = @ScriptDir & "\Database.txt" ;Global $sPassOut = "\\3gdc01\DesignENG\AutoIt\AutoLisp\Update.lsp" Global $sPassOut = @ScriptDir & "\Update.lsp" Global $aFilename Load_Database() While 1 ; Main Wait Loop Sleep(10) WEnd Func Excel() ;Local $sClipboard = ClipGet() Local $sClipboard = "\\path1\path2\aef Pilot.dat" & Chr(13) & Chr(10) ; Excel format If StringRight($sClipboard, 2) = Chr(13) & Chr(10) Then MsgBox($MB_SYSTEMMODAL,"You are in Excel","You are in Excel") $sClipboard = StringTrimRight($sClipboard, 2) EndIf ; Extract file name If StringInStr($sClipboard, "\") > 0 Then $sClipboard = StringRegExpReplace($sClipboard, "^.*\\", "") EndIf ; File all files Local $aFound = _ArrayFindAll($aFilename, $sClipboard) ; Show file sfound If IsArray($aFound) Then For $i = 0 To UBound($aFound) - 1 MsgBox($MB_SYSTEMMODAL, "Found", $aFilename[$aFound[$i]][1] & " \" & $aFilename[$aFound[$i]][0]) Next Else MsgBox($MB_SYSTEMMODAL, "Not Found", $sClipboard & " not found in database") EndIf ; But you do nothing with the result - is that what you want? EndFunc ;==>Excel Func Replace() ;Local $sClipboard = ClipGet() ;Local $sClipboard = "\\path1\path2\aef Pilot.dat" & Chr(13) & Chr(10) ; Excel Local $sClipboard = "|\\path1\path2\aef Pilot.dat|" ; AutoCad ;Local $sClipboard = "" ; Neither Local $sOutput = "", $hFile, $aFound If StringLeft($sClipboard, 1) = "|" Then ;Autocad Detected _Progress_On("Converting AutoCAD Data") $hFile = FileOpen($sPassOut, $FO_OVERWRITE) ; Check if file opened for reading OK ; <<<<<<<<<<<<<<<<<<<< No, open for overwriting, old version will be deleted If $hFile = -1 Then MsgBox($MB_SYSTEMMODAL, "Error", "Unable to open " & $sPassOut) Exit EndIf ; Remove any leading and trailing | $sClipboard = StringRegExpReplace($sClipboard, "^\|+(.*)\|+$", "$1") ; Extract file name If StringInStr($sClipboard, "\") > 0 Then $sClipboard = StringRegExpReplace($sClipboard, "^.*\\", "") EndIf ; If file does not exist If Not FileExists($sClipboard) Then ; Find all possible files $aFound = _ArrayFindAll($aFilename, $sClipboard) ; Select if more than one $sOutput = Filter($aFound, $sClipboard) ; Remove leading \ and .dwg $sOutPutStripped = StringRegExpReplace($sOutput, "^\\*(.*)\.dwg$", "$1") ; Create line $sOutputFinal = '(Command "xref" "p" "' & $sOutPutStripped & '" "' & StringReplace($sOutput, "\", "\\") & '")' ; Write to file FileWriteLine($hFile, $sOutputFinal) EndIf ; Tidy up FileClose($hFile) _Progress_Off() ClipPut("<") ConsoleWrite("AutoCAD - written to file: " & $sOutputFinal & @CRLF) ElseIf StringRight($sClipboard, 2) = Chr(13) & Chr(10) Then ; Excel detected MsgBox($MB_SYSTEMMODAL, "You are in Excel", "You are in Excel") $sClipboard = StringTrimRight($sClipboard, 2) ; Get file name If StringInStr($sClipboard, "\") > 0 Then $sClipboard = StringRegExpReplace($sClipboard, "^.*\\", "") EndIf ; Find file $aFound = _ArrayFindAll($aFilename, $sClipboard) ; Place file path into clipboard $sOutput = Filter($aFound, $sClipboard) ClipPut($sOutput) ConsoleWrite("Excel - Put in clipboard: " & $sOutput & @CRLF) EndIf EndFunc ;==>Replace Func Filter($aFound, $sItem) Local $sAnswer = "", $aID, $iMsg If IsArray($aFound) Then If UBound($aFound) = 1 Then $sAnswer = $sItem Else $aID = $aFound $hWinMain = GUICreate("Clipboard Contents", @DesktopWidth - 20, @DesktopHeight - 30) For $i = 0 To UBound($aFound) - 1 $aID[$i] = GUICtrlCreateButton($aFilename[$aFound[$i]][1] & "\" & $aFilename[$aFound[$i]][0], 10, ($i + 1) * 30, @DesktopWidth - 40, 30) Next GUISetState() While 1 $iMsg = GUIGetMsg() Switch $iMsg Case $GUI_EVENT_CLOSE ExitLoop Case Else For $i = 0 To UBound($aID) - 1 If $iMsg = $aID[$i] Then $sAnswer = $aFilename[$aFound[$i]][1] & "\" & $aFilename[$aFound[$i]][0] ExitLoop 2 EndIf Next EndSwitch WEnd GUIDelete($hWinMain) EndIf Else MsgBox($MB_SYSTEMMODAL, "Not Found", $sItem & " not found in database") EndIf Return $sAnswer EndFunc ;==>Filter Func Build_Database() _Progress_On("Reading Directory Tree") $aFileNames = _FileListToArrayRec($sRoot, "*.*", $FLTAR_FILES, $FLTAR_RECUR, $FLTAR_NOSORT, $FLTAR_FULLPATH) ReDim $aFilename[$aFileNames[0]][2] For $i = 1 To $aFileNames[0] $aFilename[$i - 1][0] = StringRegExpReplace($aFileNames[$i], "^.*\\", "") $aFilename[$i - 1][1] = StringRegExpReplace($aFileNames[$i], "(^.*)\\(.*)", "\1") Next _ArraySort($aFilename) Save_Database() _Progress_Off() EndFunc ;==>Build_Database Func Load_Database() _Progress_On("Reading Current Data") Sleep(1000) _FileReadToArray($sDatabase, $aFilename, $FRTA_NOCOUNT, "|") _Progress_Off() EndFunc ;==>Load_Database Func Save_Database() _FileWriteFromArray($sDatabase, $aFilename, 1) If @error Then MsgBox($MB_SYSTEMMODAL, "Error", "Problems overwriting: " & @CRLF & $sDatabase) Exit EndIf EndFunc ;==>Save_Database Func _Progress_On($sText) Local $aToast = _Toast_Show(0, "3G Lighting - Movable Data System", $sText & @CRLF & "Please be patient!" & @CRLF) GUICtrlCreateProgress(20, $aToast[1] - 25, $aToast[0] - 40, 10, 0x00000008) ; $PBS_MARQUEE GUICtrlSendMsg(-1, 0X40A, True, 50) ; $PBM_SETMARQUEE EndFunc ;==>_Progress_On Func _Progress_Off() _Toast_Hide() EndFunc ;==>_Progress_Off When I run this alongside your original script I get the same results - although I am only guessing at the correct format for the clipboard content. If I have guessed wrong then please let me know what would be a representative content and I will adjust the code accordingly. 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...
KrisTaracad Posted May 2, 2016 Author Share Posted May 2, 2016 Hi M23 I have done the following. Created a new script file Ensured that all AU3 include files are located in the appropriate include directories Add the toast.au3 file from your post to the local path Updated the clipboard variable I receive the same error message. I'm not entirely sure what you mean by "let me know what would be a representative content" I can ask the guys that generally use this for some background info if you let me know what I should ask them. Thank you for your efforts! Kris Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted May 2, 2016 Moderators Share Posted May 2, 2016 KrisTaracad, Oh dear - that does not sound good as I can obviously run the script without problem. The line giving you the error is in the include file Security.au3 - but that file is not used by the script I posted. Are you sure that there are no other .au3 files around which you might be running as well as this script? What AutoIt version are you running? This will tell you if you do not know already: MsgBox(0, "Version", @AutoItVersion) A full reinstall might well be in order - but let us leave that to one side for the moment. As to the "representative content" - could you ask the users to copy to a text file the contents of the clipboard that they would expect to have just before they use the Ctrl-Alt-X and Ctrl-Alt-C HotKeys. Then I will have actual strings to confirm that I have correctly updated the various functions. 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...
KrisTaracad Posted May 2, 2016 Author Share Posted May 2, 2016 It is version 3.0100.0 I will check in with the staff and get back to you. Kris Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted May 2, 2016 Moderators Share Posted May 2, 2016 KrisTaracad, What! You do realise that version was released in February 2004! Would you run any other 12-year old software? Do you use AutoIt for other things that this particular script? Why have you never upgraded? 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...
KrisTaracad Posted May 2, 2016 Author Share Posted May 2, 2016 We have taken over IT for this company and they never had IT staff that did anything to upgrade. So they are all using an old version. I don't believe they use AutoIT for anything else. I believe they only use it for the purpose of looking for file names within a folder structure. Kris Link to comment Share on other sites More sharing options...
KrisTaracad Posted May 2, 2016 Author Share Posted May 2, 2016 Hi M23 This is what they do Type in text with part of a filename or what not, then copy it to the clipboard then ctrl-alt-v then something pops up to allow them to find the file and double click on the file will copy the path to the clipboard Does that make sense? Kris 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