martin Posted January 12, 2010 Posted January 12, 2010 (edited) With OnEvent mode set as an option, the events for menu items can be incorrectly placed at the end of the gui creation instead of immediately after the control cretaion. Here is an example expandcollapse popup#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> Opt("GUIOnEventMode", 1) #Region ### START Koda GUI section ### Form=g:\moe\moe_spacerlabels.kxf $MOELabelPrintForm = GUICreate("Spacer Label Printing - MOE", 375, 466, 197, 122) $MenuHelp = GUICtrlCreateMenu("&Help");<---------------------------------------------------------------------here is a menu item $MenuItemAbout = GUICtrlCreateMenuItem("About", $MenuHelp);<--------------------------------------- and another GUISetFont(10, 400, 0, "MS Sans Serif") GUISetBkColor(0xCEE3CE) GUISetOnEvent($GUI_EVENT_CLOSE, "MOELabelPrintFormClose") GUISetOnEvent($GUI_EVENT_MINIMIZE, "MOELabelPrintFormMinimize") GUISetOnEvent($GUI_EVENT_MAXIMIZE, "MOELabelPrintFormMaximize") GUISetOnEvent($GUI_EVENT_RESTORE, "MOELabelPrintFormRestore") $Input1 = GUICtrlCreateInput("", 185, 278, 84, 24, BitOR($ES_AUTOHSCROLL,$ES_NUMBER)) GUICtrlSetOnEvent(-1, "Input1Change") GUICtrlSetOnEvent(-1, "UpDnCopiesChange") $IPCopis = GUICtrlCreateInput("0", 209, 312, 46, 24, BitOR($ES_AUTOHSCROLL,$ES_NUMBER)) $UpDnCopies = GUICtrlCreateUpdown($IPCopis) GUICtrlSetLimit(-1, 99, 1) GUICtrlSetOnEvent(-1, "IPCopisChange") $BtnStartPrint = GUICtrlCreateButton("Start Print", 185, 350, 84, 39) GUICtrlSetOnEvent(-1, "BtnStartPrintClick") $BtnAbortPrint = GUICtrlCreateButton("Abort Print", 60, 364, 84, 25) GUICtrlSetState(-1, $GUI_DISABLE) GUICtrlSetOnEvent(-1, "BtnAbortPrintClick") $Label1 = GUICtrlCreateLabel("Number of each label", 64, 315, 132, 20) GUICtrlSetOnEvent(-1, "Label1Click") $Label2 = GUICtrlCreateLabel("Optimised Batch No.", 55, 280, 126, 20) GUICtrlSetOnEvent(-1, "Label2Click") $Label3 = GUICtrlCreateLabel("Labels are created from", 49, 10, 169, 20, $SS_CENTER) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlSetColor(-1, 0x800000) GUICtrlSetOnEvent(-1, "Label3Click") $Label4 = GUICtrlCreateLabel("Optimised Result Batches.", 48, 33, 186, 20) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlSetColor(-1, 0x800000) GUICtrlSetOnEvent(-1, "Label4Click") $Group1 = GUICtrlCreateGroup("Options", 31, 74, 311, 190) $Radio1 = GUICtrlCreateRadio("Print in job number sequence ", 51, 98, 242, 17) GUICtrlSetResizing(-1, $GUI_DOCKRIGHT+$GUI_DOCKTOP+$GUI_DOCKWIDTH+$GUI_DOCKHEIGHT) GUICtrlSetOnEvent(-1, "Radio1Click") $Radio2 = GUICtrlCreateRadio("Print in slot rack order", 51, 130, 233, 17) GUICtrlSetResizing(-1, $GUI_DOCKRIGHT+$GUI_DOCKTOP+$GUI_DOCKWIDTH+$GUI_DOCKHEIGHT) GUICtrlSetOnEvent(-1, "Radio2Click") $Label5 = GUICtrlCreateLabel("NB slot order can be the same as ", 71, 151, 205, 20) GUICtrlSetOnEvent(-1, "Label5Click") $Label6 = GUICtrlCreateLabel("job number order if set that way in ", 73, 171, 203, 20) GUICtrlSetOnEvent(-1, "Label6Click") $Label7 = GUICtrlCreateLabel("the optimiser.", 73, 190, 83, 20) GUICtrlSetOnEvent(-1, "Label7Click") GUICtrlCreateGroup("", -99, -99, 1, 1) $Checkbox1 = GUICtrlCreateCheckbox("Generate cutting list for automatic saw", 56, 225, 273, 17) GUICtrlSetState(-1, $GUI_DISABLE) GUICtrlSetOnEvent(-1, "Checkbox1Click") GUICtrlSetOnEvent(-1, "MenuHelpClick"),<------------------------------------------------------------------------but the event is set here in the wrong place. GUICtrlSetOnEvent(-1, "MenuItemAboutClick");<---------------------------------------------------------------same problem GUISetState(@SW_SHOW) #EndRegion ### END Koda GUI section ### Version 1.7.2.1 build 191 (beta) Edited January 12, 2010 by martin Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.
Lazycat Posted January 12, 2010 Author Posted January 12, 2010 With OnEvent mode set as an option, the events for menu items can be incorrectly placed at the end of the gui creation instead of immediately after the control cretaion.Hm, there is already ticket for the similar thing. So, this is not only TrayMenu related... Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
dongaman Posted January 14, 2010 Posted January 14, 2010 (edited) Without doubt, it's great. Unfortunately,atfer tried, I found it will delete script inside gui creating scripts. If it can work with au3 script already exist, I will say Koda is perfect. Edited January 14, 2010 by dongaman
Lazycat Posted January 15, 2010 Author Posted January 15, 2010 Without doubt, it's great. Unfortunately,atfer tried, I found it will delete script inside gui creating scripts. If it can work with au3 script already exist, I will say Koda is perfect. It have "update" function, this allow to update GUI part in the existing script. If you mean code blocks inside the GUI block - yes, this is not supported yet, but I have an idea how it can be done. Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
Fire Posted January 16, 2010 Posted January 16, 2010 (edited) Hi, LazycatFirstly i want to say Cпосибо for Koda.Great Job!But i have troubles with Koda.May be this bug. Koda cannot handle correct somethink with permissions on WIN XP SP2.Because i cannot use it From:C:\Program Files\AutoIt3\SciTE\KodaProblem was here:From Scite i cannot execute Koda.Because Koda will crash in this case.(Always)This is right for directly call from shortcut too Koda Form Designer cannot start and crash.(I mean install location of koda => C:\Program Files\AutoIt3\SciTE\Koda and i execute it from Desktop with Shortcut.)I use on my comp Restricted user account in this case not admin.And this occurs in restircted user rights.When i execute Koda from Administrative right account it start normally.And i think isuse here:Resticted users cannot write to %programfiles% and to it`s sub dirs.And I think this isuse successfully crash Koda.(Witout user interaction.)Here is owners:C:\Program Files\AutoIt3\SciTE\Koda>dir /Q Том в устройстве C не имеет метки. Серийный номер тома: 603F-1969 Содержимое папки C:\Program Files\AutoIt3\SciTE\Koda 16.01.2010 23:16 <DIR> SWEET-GIRL\Администрато. 16.01.2010 23:16 <DIR> SWEET-GIRL\Администрато.. 16.01.2010 19:07 <DIR> SWEET-GIRL\Domain Extras 05.09.2006 02:04 100 670 SWEET-GIRL\АдминистратоFD.chm 27.06.2009 19:06 660 480 SWEET-GIRL\Domain FD.exe 16.01.2010 19:12 3 552 SWEET-GIRL\Domain fd.xml 24.05.2008 12:01 3 641 SWEET-GIRL\Администратоfd_old.xml 10.09.2007 00:21 <DIR> SWEET-GIRL\АдминистратоForms 27.06.2009 19:08 32 033 SWEET-GIRL\Domain history.txt 10.01.2010 23:50 1 046 915 SWEET-GIRL\Domain koda_1.7.2.0.zip 16.01.2010 19:07 <DIR> SWEET-GIRL\АдминистратоLanguage 03.10.2008 12:25 35 021 SWEET-GIRL\Domain styles.xml 16.01.2010 19:07 <DIR> SWEET-GIRL\АдминистратоTemplates 7 файлов 1 882 312 байт 6 папок 23 365 754 880 байт свободно C:\Program Files\AutoIt3\SciTE\Koda>+ When i use standalone version of Koda for example fromextracted location: From My docs, or from C:\downloads it didnt Crash and works fine.All versions of Koda have this isuse.I`m sure this is not installation problem.My OS win XP SP2 (ru) 5.1.2600 Was Checked for Spyware + for viri and etc. Computer Is "Clean".I mean no suspicious files or processes.DEP on my OS is not applicable for 3`rd party apps.In this case this is not isuse with DEP.+Firewall +Application Monitoring is oFF (i mean under test).Here is crash dump for Koda:Here is crash dump for Koda:Тип события: Ошибка Источник события: Application Error Категория события: Отсутствует Код события: 1000 Дата: 16.01.2010 Время: 19:03:17 Пользователь: Н/Д Компьютер: SWEET-GIRL Описание: Ошибка приложения fd.exe, версия 1.7.1.0, модуль kernel32.dll, версия 5.1.2600.2991, адрес 0x00012a5b. Данные: 0000: 41 70 70 6c 69 63 61 74 Applicat 0008: 69 6f 6e 20 46 61 69 6c ion Fail 0010: 75 72 65 20 20 66 64 2e ure fd. 0018: 65 78 65 20 31 2e 37 2e exe 1.7. 0020: 31 2e 30 20 69 6e 20 6b 1.0 in k 0028: 65 72 6e 65 6c 33 32 2e ernel32. 0030: 64 6c 6c 20 35 2e 31 2e dll 5.1. 0038: 32 36 30 30 2e 32 39 39 2600.299 0040: 31 20 61 74 20 6f 66 66 1 at off 0048: 73 65 74 20 30 30 30 31 set 0001 0050: 32 61 35 62 0d 0a 2a5b.. ############### Here is exception: POP ESI 007c812a5b <== Always same:(Only for know where is problem) ###############+ Here is i write script for dump Koda proccess(FD.exe) when i execute it and when it crash (Sorry for Unclear):expandcollapse popupShellExecute(@ProgramFilesDir&"\AutoIt3\SciTE\Koda\FD.exe") Sleep(300) If ProcessExists("FD.EXE") Then detect() EndIf #cs Usage Of procdump C:\Downloads\Movie>procdump.exe ProcDump v1.7 - Writes process dump files Copyright (C) 2009 Mark Russinovich Sysinternals - www.sysinternals.com Monitors a process and writes a dump file when the process exceeds the specified CPU usage. usage: procdump [-64] [[-c CPU usage] [-u] [-s seconds]] [-n exceeds] [-e] [-h] [-m commit usage] [-ma] [-o] [-r] [-t] < <process name or PID> [dump file]] | [-x <image file> <dump file> [arguments]> -64 By default Procdump will capture a 32-bit dump of a 32-bit process when running on 64-bit Windows. This option overrides to create a 64-bit dump. -c CPU threshold at which to create a dump of the process. -e Write a dump when the process encounters an unhandled exception. -h Write dump if process has a hung window (does not respond to window messages for at least 5 seconds. -m Memory commit threshold in MB at which to create a dump of the process. -ma Write a dump file with all process memory. The default dump format includes thread and handle information. -n Number of dumps to write before exiting. -o Overwrite an existing dump file. -r Reflect (clone) the process for the dump to minimize the time the process is suspended (Windows 7 and higher only). -s Consecutive seconds CPU threshold must be hit before dump is written (default is 10). -t Write a dump when the process terminates. -u Treat CPU usage relative to a single core. -x Launch the specified image with optional arguments. Use the -accepteula command line option to automatically accept the Sysinternals license agreement. To just create a dump of a running process, omit the CPU threshold. If you omit the dump file name, it defaults to <processname>.dmp. Example: Write up to 3 dumps of a process named 'consume' when it exceeds 20% CPU usage for five seconds to the directory c:\dump\consume with the name consume.dmp: C:\>procdump -c 20 -s 5 -n 3 -o consume c:\dump\consume Example: Write a dump for a process named 'hang.exe' when one of it's windows is unresponsive for more than 5 seconds: C:\>procdump -h hang.exe hungwindow.dmp Example: Write 3 dumps 5 seconds apart: C:\>procdump -s 5 -n 3 notepad.exe notepad.dmp Example: Launch a process and then monitor it for excessive CPU usage: C:\>procdump -c 30 -s 10 -x consume.exe consume.dmp Example: Write a dump of a process named 'iexplore' to a dump file that has the default name iexplore.dmp: C:\>procdump iexplore #ce Func detect() while 1 if ProcessExists("FD.EXE") Then Run("cmd.exe /c " & "C:\Downloads\Movie\procdump.exe -accepteula -e FD.exe","",@SW_ENABLE) MsgBox(64,"DUMP WRITED!","DUMP SUCESSFULLY WRITED!") if @error Then MsgBox(48,"ERROR!","ERROR") EndIf ExitLoop if Not ProcessExists("FD.EXE") Then ProcessWait("FD.EXE") if ProcessExists("FD.EXE") Then Run("cmd.exe /c " & "C:\Downloads\Movie\procdump.exe -accepteula -e FD.exe","",@SW_ENABLE) MsgBox(64,"DUMP WRITED!","DUMP SUCESSFULLY WRITED!",1) Endif ExitLoop EndIf EndIf WEnd EndFunc;<== detect()Result here is Complete dump when it crash:CrashDump (rar) LazyCat what do you think is it bug?Thank in Advance & Sorry for my awfull English. Edited January 16, 2010 by Sh3llC043r [size="5"] [/size]
Lazycat Posted January 18, 2010 Author Posted January 18, 2010 Resticted users cannot write to %programfiles% and to it`s sub dirs.And I think this isuse successfully crash Koda.(Witout user interaction.)Just tested, this is only the reason for the trouble. Koda was always positioned as portable app. Obviously, you can install Koda outside Program Files or give writing privilege for Koda folder to regular user group. But I think will be more correct to add restricted user mode: if Koda is not able to write to it's folder, use subfolder under Application Data. Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
dongaman Posted January 18, 2010 Posted January 18, 2010 If you mean code blocks inside the GUI block - yes, this is not supported yet, but I have an idea how it can be done.ops,I am waiting such function
Fire Posted January 19, 2010 Posted January 19, 2010 Hi Lazycat.I wrote simple prog. for fix this isuse. & i fix it on my machine succesfully.For how to fix this bug see my profile.Thanks again. [size="5"] [/size]
Tlem Posted January 29, 2010 Posted January 29, 2010 (edited) Hello community. French language available for Koda 1.7.2.0. Also I have added some request and bugs on tracker. Lang_fra.xml Edited January 30, 2010 by Tlem Best Regards.Thierry
Lazycat Posted January 29, 2010 Author Posted January 29, 2010 French language available for Koda 1.7.2.0.Thanks! Added in new languages section on site. Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
Zedna Posted January 29, 2010 Posted January 29, 2010 (edited) Here is Czech language file updated from 1.7.1.1 to 1.7.2.1 (only one added message)One cosmetic bug in Koda:When I created template for new language file (from latest Koda beta) based on the Czech language thenat the end of "C:\Program Files\AutoIt3\SciTE\Koda\Language\template_cze.xml" was few empty fields <Form name=""/>:... <form name="frmMenuBuilder"> <caption>Menu Designer</caption> <InsertItem property="Caption">&Přidat</InsertItem> <DeleteItem property="Caption">&Smazat</DeleteItem> <CreateSubmenu property="Caption">&Vytvořit Podmenu</CreateSubmenu> </form> <Form name=""/> <Form name=""/> <Form name=""/> <Form name=""/> <Form name=""/> <Form name=""/></language>EDIT: Lazycat do you want me to post updated language files rather on Trac next time? Edited January 29, 2010 by Zedna Resources UDF ResourcesEx UDF AutoIt Forum Search
Lazycat Posted January 30, 2010 Author Posted January 30, 2010 One cosmetic bug in Koda: When I created template for new language file (from latest Koda beta) based on the Czech language then at the end of "C:\Program Files\AutoIt3\SciTE\Koda\Language\template_cze.xml" was few empty fields <Form name=""/>: Yes, confirm. I'll look. EDIT: Lazycat do you want me to post updated language files rather on Trac next time? This is for your decide. I'll get it anywhere Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
Tlem Posted January 30, 2010 Posted January 30, 2010 I have updated the French language file because of one mistake. Best Regards.Thierry
Lazycat Posted February 4, 2010 Author Posted February 4, 2010 New beta is out. Hopefully fixed most of annoying bugs. Some new features added as well.DownloadChanges:Beta 1.7.2.2 build 204 (2010-02-04) 2010-02-04 - Added: option to not generate ImageList itself when using for Listview/Treeview 2010-02-03 - Added: warning if user have outdated "styles.xml" file 2010-02-03 - Added: forgotten styles for Toolbar buttons 2010-02-03 - Added: ability to generate TreeView with icons 2010-02-03 - Added: ability to generate ListView with icons 2010-02-03 - Fixed: visual appearance of ListView control [FS#86] 2010-02-02 - Added: checking of actual clipboard content on paste [FS#7][FS#57] 2010-02-02 - Added: ability to save settings in the AppData folder under restricted account 2010-02-02 - Fixed: crash when running Koda first time under restricted account (thanks Sh3llC043r) 2010-02-02 - Fixed: small cosmetic issue with translation files (thanks Zedna) 2010-02-02 - Fixed: various bugs with Graphic editor (thanks Zedna) 2010-02-01 - Added: ability to generate tabs with icons (GUITab.au3 incluse used) 2010-02-01 - Fixed: wrong styles visually appearing after form loading [FS#83] (thanks monter.FM) 2010-02-01 - Fixed: events for menus generated in wrong place [FS#78] 2010-02-01 - Fixed: event for Tab generated in wrong place [FS#87] 2010-02-01 - Added: forgotten Icon property for TrayMenu 2010-02-01 - Added: ability to copy Dummy controls [FS#60] 2010-02-01 - Changed: redone a bit invisible components handling (internal) 2010-02-01 - Changed: all Dummy controls are generating in one place [FS#51] 2010-02-01 - Fixed: generating of custom image path with macro [FS#68] 2010-02-01 - Fixed: index for GUI icon was not generated [FS#80] 2010-01-31 - Fixed: enabled states for different items [FS#95] (thanks Tlem) 2010-01-31 - Fixed: wrong include for Group [FS#90] 2010-01-31 - Added: French language file (thanks Tlem) 2009-08-11 - Added: Chinese(Traditional) language file (thanks rexx) 2009-08-03 - Fixed: form position not reloaded when position is poFixed 2009-08-03 - Fixed: flaw in saving form options (thanks martin) Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
Tlem Posted February 4, 2010 Posted February 4, 2010 This is the French translation for 1.7.2.2 version of Koda with some corrections from the previous version. I will add to the tracker some 'bugs' that I'll find for the translation of some module and words. lang_fra.xml Best Regards.Thierry
Lazycat Posted February 11, 2010 Author Posted February 11, 2010 New beta is out. Here is a big change, that I want to do for long time - styles editor is fully rewritten. It should be more robust now, and support changing styles for multiple controls at once. This feature acts very similar to property inspector. If selected controls are the same type (in Autoit scope), you can modify all styles. If types are different, you still can change common styles (for example, BS_LEFT for Button and Checkbox).Hopefully nothing was broken with this change, so please test it.Download Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
Tlem Posted February 11, 2010 Posted February 11, 2010 This is the French translation for 1.7.2.3 version of Koda.lang_fra.xml Best Regards.Thierry
Valik Posted February 16, 2010 Posted February 16, 2010 On Windows Vista/7 the file association Set/Remove buttons give an error and do not change the associations. This is obviously due to UAC. In order to be properly compliant on Vista/7 you need to put the UAC shield on those buttons (Send BCM_SETSHIELD with lParam TRUE to show the shield on those buttons). Clicking the buttons should of course spawn a new process as administrator. How you do this is up to you. I would personally add a special command-line switches to Koda to register/unregister the associations and just ShellExecute("runas") that (Koda SHOULD NOT continue running, it should only change the association then close). You could use an AutoIt script that has #RequireAdmin in it which might be easier. It's pretty trivial but should be taken care of. I had to briefly run Koda as administrator just to click a single button in options. Silly.
Valik Posted February 16, 2010 Posted February 16, 2010 I've also just found a bug. According to the AutoIt documentation for Input controls, $WS_TABSTOP is a forced style unless $ES_READONLY is specified. However, Koda is always forcing $WS_TABSTOP even when $ES_READONLY is specified. I have no way of removing $WS_TABSTOP from Koda's UI even though I really am using a read-only input control and do not want it to be a tabstop.
Lazycat Posted February 17, 2010 Author Posted February 17, 2010 On Windows Vista/7 the file association Set/Remove buttons give an error and do not change the associations. This is obviously due to UAC. In order to be properly compliant on Vista/7 you need to put the UAC shield on those buttons (Send BCM_SETSHIELD with lParam TRUE to show the shield on those buttons). Clicking the buttons should of course spawn a new process as administrator. How you do this is up to you. I would personally add a special command-line switches to Koda to register/unregister the associations and just ShellExecute("runas") that (Koda SHOULD NOT continue running, it should only change the association then close). You could use an AutoIt script that has #RequireAdmin in it which might be easier.It's pretty trivial but should be taken care of. I had to briefly run Koda as administrator just to click a single button in options. Silly.Agree, with UAC it's far better when app support this natively. I'll look for it.I've also just found a bug. According to the AutoIt documentation for Input controls, $WS_TABSTOP is a forced style unless $ES_READONLY is specified. However, Koda is always forcing $WS_TABSTOP even when $ES_READONLY is specified. I have no way of removing $WS_TABSTOP from Koda's UI even though I really am using a read-only input control and do not want it to be a tabstop.Seems this is correct for Edit too. Not sure, this meant that WS_TABSTOP should not be in style when ES_READONLY is set, or it's just not forced and can be or can not be? Koda homepage ([s]Outdated Koda homepage[/s]) (Bug Tracker)My Autoit script page ([s]Outdated mirror[/s])
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