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

Ваш аккаунт

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

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

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

Передача параметров в exe

295
17 декабря 2002 года
gray_k
356 / / 20.12.1999
Как написать приложение, чтобы в него можно было передавать параметры? Как например в arj.exe. Проблема в том, что надо разместить несколько ярлыков, каждый из которых будет запускать одно и то же приложение. Но для каждого ярлыка надо передавать свои параметры.
374
17 декабря 2002 года
Pennywise
158 / / 20.05.2000
/* Program ARGS.C */
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[], char *env[]) {
int i;

printf("The value of argc is %d \n\n", argc);
printf("These are the %d command-line arguments passed to"
" main:\n\n", argc);

for (i = 0; i < argc; i++)
printf(" argv[%d]: %s\n", i, argv);

printf("\nThe environment string(s) on this system are:\n\n");

for (i = 0; env != NULL; i++)
printf(" env[%d]: %s\n", i, env);

return 0;
}
295
17 декабря 2002 года
gray_k
356 / / 20.12.1999
Цитата:
Originally posted by Pennywise
/* Program ARGS.C */
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[], char *env[]) {
int i;

printf("The value of argc is %d \n\n", argc);
printf("These are the %d command-line arguments passed to"
" main:\n\n", argc);

for (i = 0; i < argc; i++)
printf(" argv[%d]: %s\n", i, argv);

printf("\nThe environment string(s) on this system are:\n\n");

for (i = 0; env != NULL; i++)
printf(" env[%d]: %s\n", i, env);

return 0;
}


Но это консольное приложение, а если у меня обычный билдеровский проект?

295
18 декабря 2002 года
gray_k
356 / / 20.12.1999
Ура, я понял. В WinMain есть параметр LPSTR - как раз параметры командной строки.
317
19 декабря 2002 года
Relax
573 / / 20.09.2000
... а еще есть VCL-ная примочка - глобальная переменная CmdLine, содержащая командную строку и еще две полезные функции: ParamCount и ParamStr
299
01 августа 2005 года
3D Bob
885 / / 18.04.2005
Цитата:
Originally posted by Relax
... а еще есть VCL-ная примочка - глобальная переменная CmdLine, содержащая командную строку и еще две полезные функции: ParamCount и ParamStr



Как форме передать LPSTR
или как пользоваться CmdLine?

317
01 августа 2005 года
Relax
573 / / 20.09.2000
Цитата:
Originally posted by 3D Bob
Как форме передать LPSTR
или как пользоваться CmdLine?



exeshnik.exe parametr1 parametr2

вот примерно так и пользоваться...

299
01 августа 2005 года
3D Bob
885 / / 18.04.2005
Цитата:
Originally posted by Relax
exeshnik.exe parametr1 parametr2

вот примерно так и пользоваться...


Я по твоему совсем дибил?
Я спрашиваю как из программы получить эти параметры..
У меня форма не видит переменную LPSTR text

То есть в самой функции WinMain она еще доступна, а вот как из ФОРМЫ получить эту переменную.

317
01 августа 2005 года
Relax
573 / / 20.09.2000
ты, конечно, извини - если мой пост показался обыдным - никаких таких целей я не преследовал... но! если для тебя очевидно как передавать параметры функции почему же вводит в ступор факт, что у переменной есть зона видимости? переменная объявлена в функции WinMain и видна только в ней! Чтобы организовать работу с ней из других функций/форм надо объявить глобальную переменную того же типа или не глобальную, а в нужном классе и в WinMain производить присвоение...
299
01 августа 2005 года
3D Bob
885 / / 18.04.2005
Цитата:
Originally posted by Relax
ты, конечно, извини - если мой пост показался обыдным - никаких таких целей я не преследовал... но! если для тебя очевидно как передавать параметры функции почему же вводит в ступор факт, что у переменной есть зона видимости? переменная объявлена в функции WinMain и видна только в ней! Чтобы организовать работу с ней из других функций/форм надо объявить глобальную переменную того же типа или не глобальную, а в нужном классе и в WinMain производить присвоение...



Ок, просто я поначалу думал что облась видимости WinMain аспостранятся на всю программу.

317
01 августа 2005 года
Relax
573 / / 20.09.2000
не... функция она и есть функция :)
469
01 августа 2005 года
Sli
71 / / 20.01.2000
Не нужно усложнять сущьность сверх необходимости.
есть такая штука замечательная:

Unit: System

Category: command line utilities

extern PACKAGE int __fastcall ParamCount(void);
Returns the number of parameters passed on the command line.

extern PACKAGE AnsiString __fastcall ParamStr(int Index);
Returns a specified parameter from the command-line.
49K
27 апреля 2009 года
chek88
1 / / 24.04.2009
доброе время суток.Есть такая проблема может кто подскажет решение:из программы запускается консольное приложение ну и соответственно вылазит командная строка чтобы это вызываемое приложение продолжило работать нежно нажать единицу на клавиатуре не подскажете как можно это все программно автоматизировать ну чтоб эта единица передавалась без нажатия клавиши????
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог