MCT Posted November 30, 2005 Posted November 30, 2005 hey Mhz, i just started using cmenu, i like it, 2 things maybe u can implement?modifype & Cab in/out ?
Halfwalker Posted December 22, 2005 Posted December 22, 2005 Hi MHz -I just pulled down the latest 2.3, and something seems a little weird with the silent install. It's in the RunOnceEx.cmd like this :REG ADD %KEY%\%NUM% /V 20 /D "%DIR%\CMenu.exe /silent" /fYet during the install, it pops up with these windows, one after another :I click yes to move from one to the other.What did I goof up ? This one is 1,484,770 bytes in size.D.
MHz Posted December 22, 2005 Author Posted December 22, 2005 Your RunOnceEx command looks fine.The windows are automated and have a 5 second timeout for the wait. If you have a window idle for more then 5 seconds then it is fair to say that the automation has failed to deal with the window and manual assistance maybe needed. There is a very small chance that failure can happen for an unknown reason. Heh, lightning normally does not strike the same spot twice so your next install should be a success.
Halfwalker Posted December 22, 2005 Posted December 22, 2005 Ah, OK, thanks. Now that you mention it, those windows haven't popped up every time. I thought I had messed something up somewhere during each iteration of the CD.Thanks again -D.
rikgale Posted January 30, 2006 Posted January 30, 2006 I get these windows everytime, but they only apper for less than half a second each and also cause the computer to beep at each window, which scares the living daylights out of me each and everytime. It always work, thought, so I dont care. Gotta have something to keep me awake.A quality product. Thanx MHzRik
MHz Posted March 1, 2006 Author Posted March 1, 2006 (edited) @rikgaleGlad you like CMenu too. @WeedSad that x64 doesn't support CMenu and I am not sure as to why exactly. I guess CMenu is available for only 32bit OSes I have uploaded CMenu v2.4 which fixes some minor bugs. See the 1st post for details. Edited March 1, 2006 by MHz
Yurek3 Posted July 29, 2006 Posted July 29, 2006 I did use many times CMenu but i do not did use make Autoit script , now i try .I did Autoit script but not work , only starting first insttalation window.Here is my Autoit skript for Total commander#region - tcup16 install script - (Automated with WinExists functions)Opt('TrayIconDebug', 1)Opt('WinDetectHiddenText', 1)Opt('WinTitleMatchMode', 4); Installer.$executable = 'tcup16.exe'; Show progess.$splash = 0; Default catagory folder in startmenu.$group = ''; New catagory to move the default folder into.$catagory = ''; Installation folder in Program Files.$directory = ''; Allowed time for installation.$allowed = 60 * 1000; Run the installer.$pid = _Install()$time = TimerInit()Do Select Case WinExists('', '') ControlClick('', '', '') Case WinExists('', '') ControlClick('', '', '') Case WinExists('', '') ControlClick('', '', '') Case WinExists('', '') ControlClick('', '', '') Case WinExists('', '') ControlClick('', '', '') Case Else Sleep(250) EndSelect Sleep(10) If TimerDiff($time) > $allowed Then _Abort()Until Not ProcessExists($pid); Remove shortcuts.If _MainShortcut('?.lnk') Then ; Relative to shortcut directories ; Remove Startmenu shortcuts FileDelete('?.lnk') FileDelete('?.lnk') FileDelete('?.lnk') FileDelete('?.lnk') FileDelete('?.lnk') ; Remove other shortcuts _Desktop('?.lnk') _QuickLaunch('?.lnk')EndIf#endregionExitFunc _Install($path = 'Default') ; Run the installer in Default Script directory. Dim $splash, $processblock If $path = 'Default' Then $path = @ScriptDir If StringRight($path, 1) <> '\' Then $path = $path & '\' If StringInStr($executable, '\') Then $path = '' If Not FileExists($path & $executable) Then Exit 1 If $processblock <> '' Then Call('_' & 'ProcessBlock') If $splash Then _Splash('Installing:' & StringTrimRight(StringReplace(@ScriptName, '_', ' '), 4)) If StringRight($executable, 3) = 'msi' Then Return Run(@SystemDir & '\msiexec /i "' & $path & $executable & '"') Else Return Run($path & $executable) EndIfEndFuncFunc _Abort() ; close process if exists then exit. Dim $pid If ProcessExists($pid) Then ProcessClose($pid) Exit 2 Else Exit 3 EndIfEndFuncFunc _Desktop($shortcut) ; Delete a Desktop shortcut. If FileExists(@DesktopDir & '\' & $shortcut) Then Return FileChangeDir(@DesktopDir) And FileDelete($shortcut) ElseIf FileExists(@DesktopCommonDir & '\' & $shortcut) Then Return FileChangeDir(@DesktopCommonDir) And FileDelete($shortcut) EndIfEndFuncFunc _MainShortcut($shortcut, $rename = '') ; Change working directory to correct StartMenu\Group directory. Dim $group, $catagory, $splash If $group = '' Then Return 0 If FileExists(@ProgramsDir & '\' & $group) Then FileChangeDir(@ProgramsDir & '\' & $group) ElseIf FileExists(@ProgramsCommonDir & '\' & $group) Then FileChangeDir(@ProgramsCommonDir & '\' & $group) Else Return 0 EndIf ; Wait for main shortcut. If $splash Then _Splash('Waiting for shortcuts') For $i = 1 To 20 If FileExists($shortcut) Then ExitLoop Sleep(500) Next If $splash Then _Splash('Cleaning up:' & StringTrimRight(StringReplace(@ScriptName, '_', ' '), 4)) ; If catagory not assigned anything, then return. If $catagory = '' Then Return 1 ; Move the group folder into the catagory folder. If FileChangeDir('..') And DirCopy($group, $catagory & '\' & $group, 1) Then If DirRemove($group, 1) Then ; If optional rename parameter is used, then rename the group folder. If $rename <> '' And FileChangeDir($catagory) Then If DirCopy($group, $rename, 1) And DirRemove($group, 1) Then Return FileChangeDir($rename) EndIf Else Return FileChangeDir($catagory & '\' & $group) EndIf EndIf EndIfEndFuncFunc _QuickLaunch($shortcut) ; Delete a Quicklaunch shortcut. Local $subdirs = '\Microsoft\Internet Explorer\Quick Launch' If FileExists(@AppDataDir & $subdirs & '\' & $shortcut) Then Return FileChangeDir(@AppDataDir & $subdirs) And FileDelete($shortcut) ElseIf FileExists(@AppDataCommonDir & $subdirs & '\' & $shortcut) Then Return FileChangeDir(@AppDataCommonDir & $subdirs) And FileDelete($shortcut) EndIfEndFuncFunc _Splash($text = '') ; Shows a small borderless splash message. Dim $splash If $splash Then If $text Then SplashTextOn('', $text, 500, 25, -1, 5, 1, '', 14) Else SplashOff() EndIf EndIfEndFuncFunc _WinClose($title, $text = '') ; Close a window with further attempts. For $i = 1 To 10 WinClose($title, $text) If Not WinExists($title) Then Return 1 Sleep(500) NextEndFuncFunc OnAutoItStart() ; A 2nd script instance will exit. Local $interpreter If StringInStr($cmdlineraw, '/dummy') Then Exit $interpreter = StringTrimRight(@ScriptName, 4) & ' Script Interpreter' If WinExists($interpreter) Then Exit AutoItWinSetTitle($interpreter)EndFuncwhere i need write some options , will work goodhow somebody can put here goodone sript ( thisone or other from CMmenu i will very glad)i now we have Autoit Forum but my engish is not too goodYurek3
MHz Posted July 30, 2006 Author Posted July 30, 2006 Yurek3,Make sure that you read the CMenu Helpfile. In the Identify Installer page is some links at the bottom which shows a simple example. The Helpfile does let you know of the tasks to be done by you to complete the script as the scipt created is just based on a template. The script needs editting between the "#region" and "#endregion" fold keywords.As for using 'tcup16.exe, I would guess you have the 16 bit version that is used on Windows 3.1.I will show a working example script of installing the 32 bit version.View Script: _tcmdr655.htmlDownload Script: _tcmdr655.au3The CMenu Helpfile does mention that the WinExists type of script can be the most advanced, so using a WinWait script might make it easier for you to learn making an automation script. Silent installation scripts made by Identify Installer are also available for installers that support silent install.
Yurek3 Posted July 30, 2006 Posted July 30, 2006 (edited) Thenks a lot i will learn Auotit script.One more thinks You did Autoit script for exist now you can do waits please.step by stepbig THX for You Edited July 30, 2006 by Yurek3
MHz Posted August 3, 2006 Author Posted August 3, 2006 Yurek3,I converted the Total commander using WinExist() with a Loop, into a WinWait() script for you.View: _tcmdr655.htmlDownload: _tcmdr655.au3You will notice the scripts are similar but WinExist() will check multiple windows at once to process the first match with the condition of the loop, while WinWait() is one window to handle, then the next window to handle so is easier to manage for new users of AutoIt3.
Jorex Posted August 18, 2006 Posted August 18, 2006 Hello friends, I am wanting to create an installation for the program Nitro PDF Pro, however I am having difficulties to do. If somebody can me to help I thank. this is the link: http://www.nitropdf.com/Professional/trial.asp I want the script to close the program and also close the page of the site that opens in the end.I thank to who can me to help.
MHz Posted August 19, 2006 Author Posted August 19, 2006 I want the script to close the program and also close the page of the site that opens in the end.If you have a script made and need some help, then I'm sure that I or someone else maybe able to help you with the problems in your script. There are some samples above of using scripts made with CMenu templates.I'm sure that ProcessClose() can perhaps handle your issues.
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