c ++ начать процесс с аргумента - PullRequest
1 голос
/ 09 августа 2010

Я знаю, как начать процесс с аргументом, но я пытаюсь создать программу, которая использует эти аргументы. например, IE8 использует Process :: Start ("IExplore.exe", "google.com"); в качестве аргумента, чтобы открыть новое окно с URL google.com. Я хочу, чтобы моя программа использовала аргумент, отправьте его, но я не знаю, как получить аргумент. как Process :: Start ("myprogram.exe", "TURE"); я хочу, чтобы моя программа получила туре заранее спасибо Рами

Ответы [ 3 ]

4 голосов
/ 09 августа 2010

Существует два варианта, в зависимости от того, какую программу вы создаете.

  • Если ваша программа - программа в консольном режиме, используйте параметры argc и argv, переданные в main().
  • Если ваша программа является программой в режиме графического интерфейса, используйте параметр pCmdLine, передаваемый вашему WinMain().

В любом случае вывсегда можно использовать GetCommandLine().

2 голосов
/ 09 августа 2010

Предполагается, что вы напишите свою точку входа примерно так:

int main(int argc, char* argv[])

Тогда argc - это число аргументов, используемых для вызова вашей программы, а argv - фактические аргументы.

Попробуйте:

#include <cstdio>

int main(int argc, char* argv[])
{
    for (int i = 0; i < argc; ++i)
        printf("%s\n", argv[i]);
}
0 голосов
/ 09 августа 2010
#include <stdlib.h>
...
system("IExplore.exe google.com");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...