Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Параметры в командной строке?!

462
09 сентября 2003 года
little brother
81 / / 18.10.2002
Подскажите плиз, как обработать параметры в командной строке на MFC. И как вообще сделать программу, чтобы та принимала эти параметры?
401
09 сентября 2003 года
Br@in RIPper
289 / / 15.02.2003
Цитата:
Originally posted by little brother
Подскажите плиз, как обработать параметры в командной строке на MFC. И как вообще сделать программу, чтобы та принимала эти параметры?



ну, если ты знаешь, что такое функция WinMain, то там есть параметр LPSTR lpCmdLine (3 по счету) - это и есть командная строка. А если не знаешь, или не используешь default libraries, то есть функция GetCommandLine, которая возвращает указатель на командную строку.

В консольном приложении WinMain заменяется на main( int argc, char *argv[ ], char *envp[ ] )
где argv - это массив параметров командной строки, а argc - количество элементов в этом массиве.

Обработку можно совершать при помощи CommandLineToArgvW (в семействе Win NT), но ИМХО лучше делать это вручную.

462
10 сентября 2003 года
little brother
81 / / 18.10.2002
Цитата:
Originally posted by Br@in RIPper


ну, если ты знаешь, что такое функция WinMain, то там есть параметр LPSTR lpCmdLine (3 по счету) - это и есть командная строка. А если не знаешь, или не используешь default libraries, то есть функция GetCommandLine, которая возвращает указатель на командную строку.

В консольном приложении WinMain заменяется на main( int argc, char *argv[ ], char *envp[ ] )
где argv - это массив параметров командной строки, а argc - количество элементов в этом массиве.

Обработку можно совершать при помощи CommandLineToArgvW (в семействе Win NT), но ИМХО лучше делать это вручную.



Командную строку я поймал - ::GetCommandLine(), но в MFC WinMain() скрыта от программиста. Как в таком случае указать приложению, что следует принимать параметры?

831
10 сентября 2003 года
S_T
117 / / 23.10.2002
Цитата:
Originally posted by little brother


Командную строку я поймал - ::GetCommandLine(), но в MFC WinMain() скрыта от программиста. Как в таком случае указать приложению, что следует принимать параметры?



Командная строка всегда сохраняется в CWinApp, и ничего никуда указывать не нужно.

Используй функцию
CWinApp::ParseCommandLine

Чтобы получить указатель на CWinApp - использую глобальную функцию AfxGetApp()

462
11 сентября 2003 года
little brother
81 / / 18.10.2002
Цитата:
Originally posted by S_T


Командная строка всегда сохраняется в CWinApp, и ничего никуда указывать не нужно.

Используй функцию
CWinApp::ParseCommandLine

Чтобы получить указатель на CWinApp - использую глобальную функцию AfxGetApp()


Командную строку-то я вижу - это путь к файлу. Я не могу передать параметры в программу. При попытке запустить с командной C:/имя_файла_параметр получается ошибка - такого файла нет.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог