--- np2/win9x/np2arg.cpp 2005/03/19 18:54:58 1.3 +++ np2/win9x/np2arg.cpp 2005/03/20 13:12:49 1.5 @@ -1,5 +1,6 @@ #include "compiler.h" #include "np2arg.h" +#include "oemtext.h" #include "dosio.h" // ver0.26 np2arg.cpp append @@ -9,7 +10,7 @@ #define MAXARG 32 -#define ARG_BASE 0 // win32のlpszCmdLineの場合 +#define ARG_BASE 1 // win32のlpszCmdLineの場合 // 実行ファイル名無し NP2ARG_T np2arg = {{NULL, NULL, NULL, NULL}, @@ -17,20 +18,22 @@ // --------------------------------------------------------------------- -// win32の場合 コマンドラインが stringが返ってくる・・・ +static OEMCHAR argstrtmp[2048]; -static OEMCHAR argstrtmp[1024]; - -void np2arg_analize(const TCHAR *argstr) { +void np2arg_analize(void) { int np2argc; OEMCHAR *np2argv[MAXARG]; int i; int drv = 0; - char c; + OEMCHAR c; const OEMCHAR *p; - milstr_ncpy(argstrtmp, argstr, NELEMENTS(argstrtmp)); +#if defined(OSLANG_UTF8) + tchartooem(argstrtmp, NELEMENTS(argstrtmp), GetCommandLine(), -1); +#else + milstr_ncpy(argstrtmp, GetCommandLine(), NELEMENTS(argstrtmp)); +#endif np2argc = milstr_getarg(argstrtmp, np2argv, NELEMENTS(np2argv)); for (i=ARG_BASE; i