バッチファイルのスクリプトが職場では正常に動作しない*1ので、Vicual C++ 2008 Express Edisionでコンソールアプリを作り始めた。
まず、Win32コンソールアプリケーションのプロジェクトを作った。正しい作法か詳しく調べなかったけど、unicode対応にするとVC++特有の実装を行う必要がある。とりあえず今日は、コマンドライン引数が受け取れるところまでを確認した。
void usage(void) { _tprintf(_T("teracopy_wrap.exe (COPY|MOVE) source target\n")); exit(-1); } int _tmain(int argc, _TCHAR* argv[]) { // 調査用 printf("argc: %d\n", argc); for (int i = 1; i < argc; i++) { _tprintf(_T("argv[%d]: %s\n"), i, argv[i]); } if (argc < 3) { // エラーメッセージ usage(); } return 0; }
*1:自宅では正常動作するので原因不明です。