[Bug 57090] New: incorrectly parsing parameters in winevdm
https://bugs.winehq.org/show_bug.cgi?id=57090 Bug ID: 57090 Summary: incorrectly parsing parameters in winevdm Product: Wine Version: 9.15 Hardware: x86-64 URL: https://winworldpc.com/product/aldus-photostyler/2x OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: crypt32 Assignee: wine-bugs(a)winehq.org Reporter: guillere(a)adinet.com.uy Distribution: Debian "Aldus PhotoStyler 2.0 SE" installs "KODAC PRECISION Color configure" in the control panel, when you run it, it does nothing. Thinking it was a problem with the Control Panel Applet, I debugged kcfg32.cpl and there I saw that it called kcfg16.exe kcfg16.exe does nothing in wine, testing in windows I also notice that kcfg16.exe (win16) does nothing. I debug the applet again and see that it calls kcfg16.exe with parameters! If the parameters it expects are not there then it ends silently. I test in windows7 with the detected parameters. CMD => kcfg16.exe 1 "c:\windows\system32\kcfg.hlp" "KODAC PRECISION Color configure" I try variations of parameters I come to understand the general form kcfg16.exe $VALUE "$HELP_FILE_in_quotes" "$WINDOWS_TITLE_in_quotes" $VALUE= 1 OR 2 OR 3 ; 3 is Snooper window $HELP_FILE_in_quotes= need to be quoted! can be any string ; used to call winhelp $WINDOWS_TITLE_in_quotes= need to be quoted! can be any string ; used for windows title minimal functional form kcfg16.exe 1"""" In wine CMD => kcfg16.exe 1 "c:\windows\system32\kcfg.hlp" "KODAC PRECISION Color configure" => not work kcfg16.exe 1 "blabla" "blabla" => not work kcfg16.exe 1 \"blabla\" \"blabla\" => WORK!!!!!!! Debugging getting insted it call winedvm.exe --app-name c:\windows\system32\kcfg16.exe c:\windows\system32\kcfg16.exe 1 "blabla" "blabla" => also not work winedvm.exe --app-name kcfg16.exe kcfg16.exe 1 \"blabla\" \"blabla\" => THIS WORKS!!! -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=57090 Guillermo Reisch <guillere(a)adinet.com.uy> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|crypt32 |-unknown --- Comment #1 from Guillermo Reisch <guillere(a)adinet.com.uy> --- WINEDEBUG=trace+winevdm wine cmd
kcfg16 1 """" 013c:trace:winevdm:main GetCommandLine = 'C:\windows\system32\winevdm.exe --app-name "C:\windows\system32\kcfg16.exe" kcfg16 1 """"' ... 013c:trace:winevdm:main cmdline = '1 \"' ... => expected cmdline = '1 """"'
winevdm kcfg16 1 "val1" "val 2" 015c:trace:winevdm:main GetCommandLine = 'winevdm kcfg16 1 "val1" "val 2"' ... 015c:trace:winevdm:main cmdline = '1 val1 "val 2"' ... => expected cmdline = '1 "val1" "val 2"'
winevdm kcfg16 A B 0168:trace:winevdm:main GetCommandLine = 'winevdm kcfg16 A B ' 0168:trace:winevdm:main appname = 'C:\windows\system32\kcfg16.exe' 0168:trace:winevdm:main cmdline = 'A B' 0168:trace:winevdm:main argv[0]: 'winevdm' 0168:trace:winevdm:main argv[1]: 'kcfg16' 0168:trace:winevdm:main argv[2]: 'A' 0168:trace:winevdm:main argv[3]: 'B' => expected cmdline = 'A B '
winevdm use argv[] to recreate command line instead of using GetCommandLineA ; the problem is that you cannot recreate command line from argv because information is lost when argv is created Need to parse GetCommandLineA to create cmdline for w16 program -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=57090 Guillermo Reisch <guillere(a)adinet.com.uy> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |guillere(a)adinet.com.uy --- Comment #2 from Guillermo Reisch <guillere(a)adinet.com.uy> --- Created attachment 77037 --> https://bugs.winehq.org/attachment.cgi?id=77037 [patch] winevdm: parse GetCommandLineA to create cmdline instead of argv instead of recreate cmdline using argv[] keep count of parameters in winevdm and strip left parameters of getCommandLineA to create cmdline for win16 program. also rework in parsing parameters to allow future parameters. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=57090 Ken Sharp <imwellcushtymelike(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, win16 -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla