У меня есть приложение SDI, установленное в Visual Studio. Я понял, что передать имя файла в приложение отлично, как в командной строке: MyApp.exe "C:\a.txt"
. Однако он не принимает пользовательские аргументы или URL-адреса. Скажите, что я не могу сделать MyApp.exe "SomethingILike"
или MyApp.exe "www.google.com"
Пользовательский параметр синтаксического анализа MFC SDI
Я понимаю, код для обработки аргументов в ...App::InitInstance()
Есть
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
if (!ProcessShellCommand(cmdInfo))
return FALSE;
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();
Очевидно ProcessShellCommand
правила из аргументов MFC не считает разумным. Как мне обрабатывать свои собственные аргументы? Скажем, я хочу передать «SomethingILike», теперь он говорит мне файл-не обретенный и выключается, но, по крайней мере, я хочу, чтобы приложение, чтобы начать нормально и у меня будет шанс получить
this->m_lpCmdLine
Я не могу комментировать из инструкции ProcessShellCommand
if, в противном случае это дает мне необработанное исключение. Возможно, ProcessShellCommand
тоже выполняет некоторые инициализационные работы, что для меня звучит не совсем разумно.
Спасибо. Это сработало. – Bigman