From: Deepak Chand Rathore (deepakr@aztec.soft.net)
Date: Thu Feb 19 2004 - 01:54:00 EST
Hi all,
I am creating new tasks using CreateProcessA(), and i want all the arguments
to be passed unchanged.
but the arguments r not retaining their hex value( or sometimes not getting
passed itself ) when passed to exe as argument in CreateProcessA().
This change is observed when i change my system default locale settings.
For example when "\x9d" is correctly passed to utf8.exe when my system
locale is english, but when i change my system locale to korean, "\x9d" is
not
passed to utf8.exe. Similar behavior is observed with other hex values
(\x81,...) which are reserved by windows in code page 1252. But such hex
values can occur in
my argument list as it is utf8 encoded . For eg. korean character (\xac5d
)in utf8 ( \xea\xb1\x9d ) contains \x9d.
CreateProcessA(
"utf8.exe",
"UTF8.exe \x81",
NULL,
NULL,
false,
0,
NULL,
NULL,
&l_siNewTask,
&l_piNewTask
) ;
Is there any work around ( microsoft guys) , where all the characters retain
their hex values ( \x00 to \xff ) when passed to exe irrespective of the
system locale settings ?
Thanks
DC
This archive was generated by hypermail 2.1.5 : Thu Feb 19 2004 - 02:45:13 EST