|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.06.2011, 00:04 | #1 |
Пользователь
Регистрация: 12.08.2010
Сообщений: 14
|
Аргументы командной строки
Вот учусь я по книге "C++ без страха!"
И там есть такая тема как "Аргументы командной строки"! Вот и собственно пример этой программы над которой я работаю. Код:
Вот первый скрин: Здесь все запускается через командную строку windows и почему то не работает. А вот второй скрин: А здесь прямой запуск программы и все работает на ура! |
22.06.2011, 01:38 | #2 | |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 395
|
Цитата:
Реализация: Код:
Последний раз редактировалось zotox; 22.06.2011 в 02:27. |
|
22.06.2011, 01:51 | #3 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
глупо делать это в коде, если уж файл должен указыватся.
ТС, у вас какая текущая директория? system32, у вас в ней есть file.txt? не забывайте что относительные пути ищутся относительно текущей директории, а не в папке программы. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
22.06.2011, 02:43 | #4 | |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 395
|
Цитата:
|
|
22.06.2011, 03:01 | #5 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
почему же нет?
по относительному пути ОС бы искала файл ..\system32\file.txt если б он там был то открылся бы. в первом скрине файла в текущей директории нет. PS: бедные мои утилитки, они не знают что они не должны открывать файлы так PPS: ОС по сути делает то же самое что вы написали в своем коде, зачем дублировать действия? но в вашем варианте, получается не возможным указать относительный путь. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 22.06.2011 в 03:13. |
22.06.2011, 03:20 | #6 |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 395
|
Код:
Код:
Логи командой строки: 1. Открытие самой программы Код:
Код:
Код:
Код:
Код:
Код:
|
22.06.2011, 03:40 | #7 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Код:
Цитата:
Цитата:
Цитата:
все отлично открывает.(тут специально вырезал файл, рядом с приложением его нет) какой еще вам тест нужен? Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 22.06.2011 в 03:44. |
|||
22.06.2011, 04:03 | #8 | |
Форумчанин
Регистрация: 09.09.2008
Сообщений: 395
|
Цитата:
Но: По поводу того откроется ли файл из под windows\system32 то: В XP: согласен, он откроется. В windows 7: под вопросом. Последний раз редактировалось zotox; 22.06.2011 в 06:27. |
|
22.06.2011, 07:54 | #9 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
естественно программа должна иметь доступ к файлу, но, это уже не наша забота.
а править ручками пути...в вашем коде так же доступ не появится. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
22.06.2011, 12:53 | #10 | |
Пользователь
Регистрация: 12.08.2010
Сообщений: 14
|
Цитата:
___________________________ Спасибо zotox и Пепел Феникса, помогли мне разобраться Последний раз редактировалось Sadist989; 22.06.2011 в 13:17. Причина: забыл сказать спасибо! |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
распознавание командной строки | danzel1 | Общие вопросы C/C++ | 2 | 10.06.2011 15:50 |
аргументы командной строки | ololo-schoolboy | Общие вопросы C/C++ | 2 | 19.05.2011 22:50 |
аргумент командной строки | DeFace | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 5 | 06.09.2010 22:10 |
Аргументы командной строки в Boost.test | nazavrik | Общие вопросы C/C++ | 0 | 18.02.2010 17:23 |
параметры командной строки. | nazavrik | Общие вопросы C/C++ | 4 | 20.11.2009 20:15 |