matwachich Posted February 3, 2013 Share Posted February 3, 2013 (edited) Hi! Here is my feedback - I downloaded the zipped archive (compiled), and I copied it to my program fils dir (Win7 x86, with UAC OFF) - I launche it the first time, select normal mode, select English as language, select different directories for config projects... - I choose to NOT link .au3 extension with ISN And now, the result: - Language is Dutch! o.O - .au3 file extension is broken! o.O - The "Create new AutoIt3" file has disapeared from my "New" menu Thanks! Edit: Had to reinstall AutoIt 3.3.8.1 to recover the damages, but the "Create new AutoIt3 File" still missing! Edited February 3, 2013 by matwachich Link to comment Share on other sites More sharing options...
Developers Jos Posted February 3, 2013 Developers Share Posted February 3, 2013 Edit: Had to reinstall AutoIt 3.3.8.1 to recover the damages, but the "Create new AutoIt3 File" still missing! Run attached script and tell me the output... should be easy to fix.Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
Mun Posted February 3, 2013 Share Posted February 3, 2013 (edited) Jos, I ran in the same problem. I thought it was just me and I couldn't narrow down which malicious code did this. I ran your settings. Reinstall autoit3 didn't seem to repair it. What do I do to manually fix this problem? - My language didn't change but all the link to au3 and I can't create any new au3 file. ****************************************************************************************************************************************** !* Found always open with Win7:Applications\SciTE.exe !* Fixed by removing Registry key: "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.au3\Userchoice"!* HKCR\.au3 Default :au3_auto_file ==> This should be either "AutoIt3Script" or "AutoIt3ScriptBeta" * HKCR\.au3 ShellNew :Template.au3 File Exists. ****************************************************************************************************************************************** * Explorer shell options: * HKCR\au3_auto_file\shell: * => Default Action: * * ShellNew:Template.au3 ****************************************************************************************************************************************** Edited February 3, 2013 by Mun Link to comment Share on other sites More sharing options...
matwachich Posted February 3, 2013 Share Posted February 3, 2013 Thanks Jos Here is my output ****************************************************************************************************************************************** * HKCR\.au3 Default :AutoIt3Script * HKCR\.au3 ShellNew :Template.au3 File Exists. ****************************************************************************************************************************************** * Explorer shell options: * HKCR\AutoIt3Script\shell: * => Default Action:Open * Compile => Command:"C:\Program Files\_MesProgrammes\Logiciels\AutoIt3\Aut2Exe\Aut2Exe.exe" /in "%l" * Edit => Command:"C:\Program Files\_MesProgrammes\Logiciels\AutoIt3\SciTE\SciTE.exe" "%1" * Edit_ISN => Command:"C:\Program Files\_MesProgrammes\Logiciels\ISN AutoIt Studio\Autoit_Studio.exe" "%1" * Open => Command:"C:\Program Files\_MesProgrammes\Logiciels\AutoIt3\SciTE\SciTE.exe" "%1" * Run => Command:"C:\Program Files\_MesProgrammes\Logiciels\AutoIt3\AutoIt3.exe" "%1" %* * * ShellNew:Template.au3 ****************************************************************************************************************************************** I didn't tried to restart my computer yet (it takes 10 minutes to start!), but I think this is what should fix the problem PS: The file extension is OK, it's just the ShellNew entry that is missing Hope the author will fix this problem, this program looks great! Link to comment Share on other sites More sharing options...
Developers Jos Posted February 3, 2013 Developers Share Posted February 3, 2013 (edited) Jos,I ran in the same problem. I thought it was just me and I couldn't narrow down which malicious code did this.I ran your settings. Reinstall autoit3 didn't seem to repair it. What do I do to manually fix this problem?- My language didn't change but all the link to au3 and I can't create any new au3 file.Have you done as suggested by the script? (A little reworded and possibly more clear )!* Fixed by:-removing Registry key: "HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.au3Userchoice"!*-changing Registry key: "HKCR.au3" Default from "au3_auto_file" to "AutoIt3Script"By the way: It is not about Malicious code but all about making wrong overrides. This happens for example, when selecting "Open With", when doing a right mouse click in explorer on a xyz.au3, and ticking the "Always Open with" when selecting a program. Edited February 3, 2013 by Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
Developers Jos Posted February 3, 2013 Developers Share Posted February 3, 2013 Thanks JosHere is my output-snip-PS: The file extension is OK, it's just the ShellNew entry that is missingStrange as it seems all Registry entries are ok again ... maybe force a restart of Explorer.exe (or reboot) helps? SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
matwachich Posted February 3, 2013 Share Posted February 3, 2013 (edited) Yep! I terminated explorer.exe, and when it restarted, all was OK. Thanks! Edit: Mun, try to reinstall autoit Edited February 3, 2013 by matwachich Link to comment Share on other sites More sharing options...
ISI360 Posted February 3, 2013 Author Share Posted February 3, 2013 (edited) So I'm really sorry that I overlook this stupid bug! I have uploaded a new version of ISN to my website that will fix the problem with the au3 files and the language of the initial config assistent! (The update is also aviable via automatic update) If your miss the "creat new au3 file" in your new contextmenue...update ISN to the latest version, download and install the latest AutoIt and restart your computer (restart is very important!) (See posts above) Again sorry for my mistake and i hope you give ISN a second chance:) Edited February 3, 2013 by ISI360 matwachich 1 Link to comment Share on other sites More sharing options...
matwachich Posted February 4, 2013 Share Posted February 4, 2013 Note: No need te restart, just close the process explorer.exe, and when it relaunches itself, all things are corrected Link to comment Share on other sites More sharing options...
matwachich Posted February 4, 2013 Share Posted February 4, 2013 (edited) Thanks for this great work! I think i'm gonna try to get used with this new tool! Any way, my first suggestions are: - Alt+I = Open Include. This should also work on .isf files. - Ctrl+J = Search function definition - Ctrl+E = Open explorer on the current file - Ctrl+F6 = Window Info Tool - Ctrl+F7 = AutoItWrapper GUI Another feedback after I understood how the Forms system works: I think it's a really BAD idea to use the forms like you did. I mean, what if my script has many forms, and I want to control when each one becomes visible/hidden??? I think each form should be encapsulated in a function, like I do in (nearly) all my scripts Here is an example of what content should be in .isf files: Enum $__GUI_CREATE, $__GUI_DELETE, $__GUI_SHOW, $__GUI_HIDE Func _GUI_Main($iFlag = $__GUI_CREATE) Switch $iFlag Case $__GUI_CREATE ; GUI Creation goes here Global $__g_hGUI_Main = GUICreate("...") Case $__GUI_DELETE GUIDelete($__g_hGUI_Main) $__g_hGUI_Main = -1 Case $__GUI_SHOW GUISetState(@SW_SHOW, $__g_hGUI_Main) Case $__GUI_HIDE GUISetState(@SW_HIDE, $__g_hGUI_Main) EndSwitch EndFunc Last remark: the .au3 file extension is broken again after updating!!! (Auto Update) PS: can you add: - Alt+M = Start Koda Edited February 4, 2013 by matwachich Link to comment Share on other sites More sharing options...
guinness Posted February 4, 2013 Share Posted February 4, 2013 Wrong, Global variables shouldn't be declared inside functions. Period. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
ISI360 Posted February 4, 2013 Author Share Posted February 4, 2013 @matwachich about the isf files: You have 2 ways to use these files: 1. Include it When you include an isf file its just the same if you write the GUI code in your script. With the difference the gui code is here in the isf file. In the isf file is always ONLY the gui! No other includes or while loops or something else. So you can include so many isf files as you want. So there is almost no difference with isf files. you can show/hide the gui with GUISetState(@SW_SHOW, $guihandle) for example. You can also use your example when you insert the include of the isf file in your " ; GUI Creation goes here" area... There is really no difference... And when you really dont want to include an isf file you have the secound methode: 2. Copy code In the formstudio click on generate code and copy the code of your GUI and past it in your script. Here you can do what you want with the code What do you mean with .au3 extension is broken? Can you explain it a little bit more. PS: No problem! Just made an macro to start koda and add a hotkey to the macroslot in the programsettings -> hotkeys Link to comment Share on other sites More sharing options...
matwachich Posted February 4, 2013 Share Posted February 4, 2013 (edited) Hi! @guinness I know it's wrong, but I do it, and it works well, and I dont have any problem with undeclared vars because I create the GUI first in the script, and I show it on need. But I agree that you also can declare all Gui Ctrl Vars outside the GUI Funcs if you want. Here an example of how I do multi-gui scripts expandcollapse popup#region ### GUI include: All this code goes into another script file ### Enum $__GUI_CREATE, $__GUI_DELETE, $__GUI_SHOW, $__GUI_HIDE ; Declaring the GUI handles to not have "non declared vars" error on the main loop if I don't create any of the 2 GUIs Global $__g_hGUI_First = -1, $__g_hGUI_Second = -2 ; Remark: you can also declare all GUI Ctrl Vars here, if you don't like Globals in Funcs :p Func _GUI_First($iFlag = $__GUI_CREATE) Switch $iFlag Case $__GUI_CREATE $__g_hGUI_First = GUICreate("First GUI") Global $B_First_OpenSecond = GUICtrlCreateButton("Open GUI 2", 30, 30, 70, 25) Case $__GUI_SHOW GuiSetState(@SW_SHOW, $__g_hGUI_First) Case $__GUI_HIDE GuiSetState(@SW_HIDE, $__g_hGUI_First) Case $__GUI_DELETE GuiDelete($__g_hGUI_First) $__g_hGUI_First = -1 EndSwitch EndFunc Func _GUI_Second($iFlag = $__GUI_CREATE) Switch $iFlag Case $__GUI_CREATE $__g_hGUI_Second = GUICreate("Second GUI") Case $__GUI_SHOW GuiSetState(@SW_SHOW, $__g_hGUI_Second) Case $__GUI_HIDE GuiSetState(@SW_HIDE, $__g_hGUI_Second) Case $__GUI_DELETE GuiDelete($__g_hGUI_Second) $__g_hGUI_Second = -1 EndSwitch EndFunc #endregion #region ### Main Script ### ; I First create GUIs, so that every globals (controls) are set _GUI_First() _GUI_Second() ; Show only the first GUI _GUI_First($__GUI_SHOW) While 1 $nMsg = GUIGetMsg(1) Switch $nMsg[1] Case $__g_hGUI_First _Events_GUIFirst($nMsg[0]) Case $__g_hGUI_Second _Events_GUISecond($nMsg[0]) EndSwitch WEnd ; First GUI events handling Func _Events_GUIFirst($nMsg) Switch $nMsg Case -1 ; $GUI_EVENT_CLOSE Exit Case $B_First_OpenSecond _GUI_First($__GUI_HIDE) _GUI_Second($__GUI_SHOW) EndSwitch EndFunc ; Second GUI events handling Func _Events_GUISecond($nMsg) Switch $nMsg Case -1 ; $GUI_EVENT_CLOSE _GUI_Second($__GUI_HIDE) _GUI_First($__GUI_SHOW) EndSwitch EndFunc #endregion @ISI360 .au3 broken, I mean that when I double-click on an .au3 file in windows explorer, it spawns me the "Open With" form (the file extension is no longer assigned to SciTE), and that the ShellNew "Create new AutoIt3 Script" is no longer in my "Context Menu -> New". I've been forced to reinstall AutoIt again! For the .isf file, you are right, I think I can do some thing like this Func _GUI_MyGUI($iFlag = $__GUI_CREATE) Switch $iFlag Case $__GUI_CREATE #include <Forms\MyGUI.isf> Case $__GUI_SHOW GuiSetState(@SW_SHOW, $__g_hGUI_MyGUI) Case $__GUI_HIDE GuiSetState(@SW_HIDE, $__g_hGUI_MyGUI) Case $__GUI_DELETE GuiDelete($__g_hGUI_MyGUI) $__g_hGUI_MyGUI = -1 EndSwitch EndFunc Thanks! And keep up the good work! Edited February 4, 2013 by matwachich Link to comment Share on other sites More sharing options...
guinness Posted February 4, 2013 Share Posted February 4, 2013 (edited) Hi!@guinnessI know it's wrong, but I do it, and it works well, and I dont have any problem with undeclared vars because I create the GUI first in the script, and I show it on need.But I agree that you also can declare all Gui Ctrl Vars outside the GUI Funcs if you want.What you do in your own code is your business, but bad practice shouldn't be passed on to others in the Forum or through ISN AutoIt Studio. You're also incredibly lucky if you haven't had an issue with undeclared variables.. Edited February 4, 2013 by guinness UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
ISI360 Posted February 4, 2013 Author Share Posted February 4, 2013 (edited) .au3 broken, I mean that when I double-click on an .au3 file in windows explorer, it spawns me the "Open With" form (the file extension is no longer assigned to SciTE), and that the ShellNew "Create new AutoIt3 Script" is no longer in my "Context Menu -> New". I've been forced to reinstall AutoIt again! [ Hmm thats strange...since the latest update the actual .au3 extension will not affected. Have you updated ISN to the latest version and then reinstall autoit and restart your pc (or kill explorer.exe)? Now your extensions and the shell "new file..." should be here, or not? Or does it just disappear when you run ISN? Edited February 4, 2013 by ISI360 Link to comment Share on other sites More sharing options...
matwachich Posted February 4, 2013 Share Posted February 4, 2013 Seriously dude, please fix this damn file extension bug, every time I launch ISN the .au3 file extension is broken, and I have to reinstall AutoIt3 PS: Next time, I'm gonna make a dump of the HKEY_CLASSES_ROOT.au3 and HKEY_CLASSES_ROOTAutoIt3Script Link to comment Share on other sites More sharing options...
matwachich Posted February 4, 2013 Share Posted February 4, 2013 Yes ISI360, the file extesion has just now broken again when I launched ISN. I was able to fix it before with reinstalling AutoIt3 Link to comment Share on other sites More sharing options...
ISI360 Posted February 4, 2013 Author Share Posted February 4, 2013 (edited) Which build version of ISN do you have? (You see it in the startupscreen or under help -> Info) Edited February 4, 2013 by ISI360 Link to comment Share on other sites More sharing options...
matwachich Posted February 4, 2013 Share Posted February 4, 2013 I made some tests for you, hope this will help you. I fixed all .au3 file extensions, by reinstalling AutoIt3: all was OK (au3 files opens with SciTE, ShellNew OK) I launch ISN, and everything is broken: .au3 extension became unknown to the system I have: ISN v. 0.9 BETA Version: 03.02.2013 (20130203) OK... just checked, there is a new update! Sorry for all this! Gonna check it now (if the Colege internet connection let me donwload it!) Link to comment Share on other sites More sharing options...
ISI360 Posted February 4, 2013 Author Share Posted February 4, 2013 ok thanks...no also the latest update will not fix it.. But i think i know whats the problem... i fix it and say it if the new update is aviable.. matwachich 1 Link to comment Share on other sites More sharing options...
Recommended Posts