https://bugs.winehq.org/show_bug.cgi?id=34273
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL|http://l.autohotkey.net/Aut |http://ge.tt/28r9gTR/v/0?t= |oHotkey_L_Install.exe |1394918587786 CC| |focht@gmx.net Summary|AutoHotKey installer can't |AutoHotKey web installer |initialize its GUI |can't initialize its GUI
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello folks,
this special 'web' installer type is no longer officially available.
Fortunately one can find the file on some other sites but no one matches the sha1sum.
--- snip --- $ WINEDEBUG=+tid,+seh,+relay,+jscript,+mshtml wine ./AutoHotkey_L_Install.exe
log.txt 2>&1
... 0029:trace:mshtml:WindowDispEx_InvokeEx (0x29b16e8)->(60000009 409 2 0x8dbc04 0x8dbbf0 0x4901818 0x4901c70) 0029:trace:mshtml:DispatchEx_InvokeEx (0x29b171c)->(60000009 409 2 0x8dbc04 0x8dbbf0 0x4901818 0x4901c70) 0029:trace:mshtml:HTMLDocument3_getElementById (0x46770b8)->(L"startmenu" 0x8db92c) ... 0029:trace:jscript:interp_str L"onblur" 0029:trace:jscript:interp_memberid 0 ... 0029:trace:mshtml:HTMLElement2_get_onblur (0x49463c8)->(0x8db9e0) 0029:trace:mshtml:HTMLDOMNode_Release (0x49463c8) ref=3 ... 0029:trace:jscript:DispatchEx_QueryInterface (0x49460c0)->(IID_IDispatchEx 0x8db9a8) 0029:trace:mshtml:invoke_disp_value >>> 0029:trace:jscript:DispatchEx_InvokeEx (0x49460c0)->(0 409 1 0x8db9ac (nil) 0x4901818 0x4901c70) 0029:trace:jscript:Function_invoke func 0x49460c0 this 0x49463c8 ... 0029:trace:jscript:enter_bytecode 0029:trace:jscript:interp_ident L"value" 0029:trace:jscript:identifier_eval L"value" 0029:trace:jscript:jsdisp_get_id not found L"value" 0029:trace:jscript:jsdisp_get_id not found L"value" 0029:trace:mshtml:dispex_query_interface (0x29b171c)->(IID_IDispatchJS 0x8db4e8) returning NULL 0029:trace:mshtml:HTMLWindow2_QueryInterface (0x29b16e8)->(IID_IDispatchEx 0x8db52c) 0029:trace:mshtml:HTMLWindow2_AddRef (0x29b16e8) ref=5 0029:trace:mshtml:WindowDispEx_GetDispID (0x29b16e8)->(L"value" 10000001 0x8db5a4) 0029:trace:jscript:JScript_GetScriptDispatch (0x49017a0)->(0x8db39c) 0029:trace:jscript:DispatchEx_QueryInterface (0x490e9a0)->(IID_IDispatchEx 0x8db3d8) 0029:trace:jscript:DispatchEx_GetDispID (0x490e9a0)->(L"value" 10000001 0x8db440) 0029:trace:jscript:jsdisp_get_id not found L"value" 0029:trace:mshtml:DispatchEx_GetDispID (0x29b171c)->(L"value" 10000001 0x8db5a4) 0029:trace:mshtml:HTMLDocument3_getElementById (0x46770b8)->(L"value" 0x8db488) ... 0029:warn:jscript:throw_error L"'value' is undefined" ... 0029:trace:jscript:prop_get L"prototype" ret obj(0x492b538) 0029:trace:jscript:DispatchEx_QueryInterface (0x492b538)->(IID_IDispatchJS 0x8dace8) 0029:trace:jscript:init_dispex 0x4991b60 (0x492b538) ... 0029:trace:jscript:ensure_prop_name creating prop L"number" flags 0 ... 0029:trace:jscript:prop_put L"number" = -2146823279.000000 0029:trace:jscript:ensure_prop_name creating prop L"message" flags 200 ... 0029:trace:jscript:prop_put L"message" = str(L"'value' is undefined") 0029:trace:jscript:ensure_prop_name creating prop L"description" flags 0 ... 0029:trace:jscript:prop_put L"description" = str(L"'value' is undefined") 0029:trace:jscript:enter_bytecode EXCEPTION 800a1391 ... 0029:warn:mshtml:invoke_disp_value <<< 800a1391 ... 0029:trace:jscript:enter_bytecode EXCEPTION 800a1391 ... 0029:warn:mshtml:HTMLWindow_invoke L"initOptions" <<< 800a1391 ... 0029:Call user32.MessageBoxW(00000000,008d2480 L"Error: 0x800A1391 - \n\nSpecifically: initOptions\n\n\tLine#\n--->\t178: w.initOptions(CurrentName, CurrentVersion, CurrentType, ProductVersion, DefaultPath, DefaultStartMenu, DefaultType, A_Is64bitOS = 1) \n\nContinue running the script?",008d1c80 L"setup.exe",00010004) ret=004744fa --- snip ---
The AHK snippet, calling 'w.initOptions':
--- snip --- ... Gui Margin, 0, 0 Gui Add, ActiveX, vwb w600 h400 hwndhwb, Shell.Explorer ComObjConnect(wb, "wb_") ...
InitUI() { local w SetWBClientSite() gosub DefineUI wb.Silent := true wb.Navigate("about:blank") while wb.ReadyState != 4 Sleep 10 wb.Document.open() wb.Document.write(html) wb.Document.Close() w := wb.Document.parentWindow if (!CurrentType && A_ScriptDir != DefaultPath) CurrentName := "" ; Avoid showing the Reinstall option since we don't know which version it was. w.initOptions(CurrentName, CurrentVersion, CurrentType , ProductVersion, DefaultPath, DefaultStartMenu , DefaultType, A_Is64bitOS = 1) if (A_ScriptDir = DefaultPath) { w.installdir.disabled := true w.installdir_browse.disabled := true w.installcompiler.disabled := !DefaultCompiler w.installcompilernote.style.display := "block" w.ci_nav_install.innerText := "apply" w.install_button.innerText := "Apply" w.opt1.disabled := true w.opt1.firstChild.innerText := "Checking for updates..." SetTimer CheckForUpdates, -500 } w.installcompiler.checked := DefaultCompiler w.enabledragdrop.checked := DefaultDragDrop w.separatebuttons.checked := DefaultIsHostApp ; w.defaulttoutf8.checked := DefaultToUTF8 if !A_Is64bitOS w.it_x64.style.display := "None" if A_OSVersion in WIN_2000,WIN_2003,WIN_XP ; i.e. not WIN_7, WIN_8 or a future OS. w.separatebuttons.parentNode.style.display := "none" w.switchPage("start") w.document.body.focus() } --- snip ---
The relevant html part (html + jscript embedded as string in AHK script):
Input control 'startmenu' with event handler 'onblur':
--- snip --- ... <div class="page" id="ci_location"> <label for="installdir" class="indent">Install location:<br> <input type="text" class="textbox" id="installdir" value="C:\Program Files\AutoHotkey" tabindex="11"> <a href="ahk://SelectFolder/installdir,Select the folder to install AutoHotkey in." id="installdir_browse" class="button" tabindex="12">Browse</a></label><br> <label for="startmenu" class="indent"> Create shortcuts in the following Start menu folder:<br> <input type="text" class="textbox" id="startmenu" value="AutoHotkey" tabindex="13" onfocus="if (style.color == '#888') value='', style.color = '';" onblur="if (value == '') value = '(don\'t create shortcuts)', style.color = '#888';"> ... --- snip ---
The jscript part (html + jscript embedded as string in AHK script):
Calling 'startmenu.onblur()':
--- snip --- function initOptions(curName, curVer, curType, newVer, instDir, smFolder, defType, is64) { if (onload) onload(), onload = null; var opt; var warn; var types = {Unicode: "Unicode 32-bit", ANSI: "ANSI 32-bit", x64: "Unicode 64-bit"}; var curTypeName = types[curType]; var defTypeName = types[defType]; curTypeName = curTypeName ? " (" + curTypeName + ")" : ""; ... start_options.innerHTML = html.join(""); start_warning.innerHTML = warn; start_warning.style.display = warn ? "block" : "none"; start_nav.innerHTML = '<em style="text-align:right;width:100%">version ' + newVer + '</em>'; installtype.value = defType; installdir.value = instDir; startmenu.value = smFolder; startmenu.onblur(); forEach (document.getElementsByTagName("a"), function() { if (/*this.className == "button" ||*/ this.parentNode.className == "options") this.hideFocus = true; }) } document.onselectstart = document.oncontextmenu = document.ondragstart = function() { return window.event && event.srcElement.tagName == "INPUT" || false; }; ... --- snip ---
$ sha1sum AutoHotkey_L_Install.exe 2c1a2faa13ddf97ea67c5dafb8aff4f8b470543a AutoHotkey_L_Install.exe
$ du -sh AutoHotkey_L_Install.exe 3.8M AutoHotkey_L_Install.exe
$ wine --version wine-1.7.14-126-g2bb1059
Regards