Форум программистов, компьютерный форум CyberForum.ru

Как передать пути в качестве аргументов приложению? - C++

Восстановить пароль Регистрация
 
VoltDeMar
 Аватар для VoltDeMar
16 / 16 / 0
Регистрация: 05.06.2012
Сообщений: 1,015
17.07.2015, 09:43     Как передать пути в качестве аргументов приложению? #1
Здравствуйте.

Как запускать приложения в дебагере VS с параметрами?
Как передать пути приложению, запуская его другим приложением. Если передать пути в качестве аргументов, то как их считать? Желательно пример.

Я пробовал делать так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    
    for (int i = 0; argv[i] != '\0'; i++)
    {
        std::wstring s = argv[i];
        std::wstring test =L"ddddddd";
        wcout << s.c_str() << endl;
        wcout << test.c_str() << endl;
 
        if (argv[i][0] == 'D' && argv[i][1] == '{')
        {
            cout<< "some text" << endl;
        }
    }
запуская приложение с аргументом D{"путь", но это не срабатывает, почему? Если оставить только if (argv[i][0] == 'D') то работает. Можно ли передавать строки произвольной длины, как?
при попытке вывода значений получаю wcout - ничего не выводится, при попытке вывести cout выводится код из цифр и буков, наверное адрес. В каком формате передавать для cout ?

Добавлено через 7 минут
Цитата Сообщение от VoltDeMar Посмотреть сообщение
Как запускать приложения в дебагере VS с параметрами?
Visual Studio 2012
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4315 / 3736 / 1260
Регистрация: 14.04.2014
Сообщений: 14,642
17.07.2015, 09:53     Как передать пути в качестве аргументов приложению? #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от VoltDeMar Посмотреть сообщение
Как запускать приложения в дебагере VS с параметрами?
В свойствах проекта:
Миниатюры
Как передать пути в качестве аргументов приложению?  
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
17.07.2015, 10:05     Как передать пути в качестве аргументов приложению? #3
VoltDeMar, Аргументы main(int argc, char *argv[])
nmcf
4315 / 3736 / 1260
Регистрация: 14.04.2014
Сообщений: 14,642
17.07.2015, 10:05     Как передать пути в качестве аргументов приложению? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вот такой заголовок используй, чтобы параметры были сразу в Unicode:
C++
1
int wmain(int argc, wchar_t *argv[])
VoltDeMar
 Аватар для VoltDeMar
16 / 16 / 0
Регистрация: 05.06.2012
Сообщений: 1,015
17.07.2015, 11:03  [ТС]     Как передать пути в качестве аргументов приложению? #5
Цитата Сообщение от Tulosba Посмотреть сообщение
VoltDeMar, Аргументы main(int argc, char *argv[])
Мне бы пример получения строки из argv

Добавлено через 15 минут
Цитата Сообщение от nmcf Посмотреть сообщение
Цитата Сообщение от VoltDeMar Посмотреть сообщение
Как запускать приложения в дебагере VS с параметрами?
В свойствах проекта:
Миниатюры
Как передать пути в качестве аргументов приложению?
какой синтаксис?
nmcf
4315 / 3736 / 1260
Регистрация: 14.04.2014
Сообщений: 14,642
17.07.2015, 12:06     Как передать пути в качестве аргументов приложению? #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от VoltDeMar Посмотреть сообщение
какой синтаксис?
Такой же как в реальной командной строке, только без имени программы.

А что с argv не получается? argv[1] - будет первый параметр, если с wmain, то сразу wchar_t.
Tulosba
:)
Эксперт С++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
17.07.2015, 12:19     Как передать пути в качестве аргументов приложению? #7
Цитата Сообщение от VoltDeMar Посмотреть сообщение
Мне бы пример получения строки из argv
Ты по ссылке вообще ходил, что я привел?
argc - кол-во аргументов
argv - список строк (т.е. argv[0] - имя программы, argv[1] - строка первого аргумента и т.д. до [argc-1])
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.07.2015, 08:02     Как передать пути в качестве аргументов приложению?
Еще ссылки по теме:

C++ Как передать итератор в качестве параметра функции?
Функции: Как передать в качестве параметра число? C++
Как в качестве аргумента функции передать массив? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
VoltDeMar
 Аватар для VoltDeMar
16 / 16 / 0
Регистрация: 05.06.2012
Сообщений: 1,015
18.07.2015, 08:02  [ТС]     Как передать пути в качестве аргументов приложению? #8
Все получилось.
Yandex
Объявления
18.07.2015, 08:02     Как передать пути в качестве аргументов приложению?
Ответ Создать тему
Опции темы

Текущее время: 00:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru