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