Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.27;
Скачать: CL | DM;

Вниз

createProcess и параметры   Найти похожие ветки 

 
darvin ©   (2005-11-09 15:39) [0]

Как можно передать программе, вызываемой по CreateProcess параметр-путь, содержащий внутри себя пробелы? Пробовал так:
1. CreateProcess ( nil,
                     PChar(ExeFile + "  " +
                              Param1 + " " + Param2),
                     ... );
но, если путь содержит пробелы, то не работает, а без пробелов - все ок

2. CreateProcess ( nil,
                     PChar(ExeFile + "  " +
                              """ + Param1 + "" " + """ + Param2 + """),
                     ... );
не работает, даже если путь не содержит пробелов


 
Anatoly Podgoretsky ©   (2005-11-09 15:49) [1]

Вопрос не по Дельфи.
Основы Операционных систем - имена файлов и путей со специальными символами должны быть в двойных кавычка.


 
darvin ©   (2005-11-09 15:51) [2]

я и ставлю в двойных (см. 2). Все равно не работает :(


 
Игорь Шевченко ©   (2005-11-09 16:07) [3]


> не работает


как не работает ? :)


 
darvin ©   (2005-11-09 16:11) [4]

не находит пути. Вызываемая программа не моя, исходников нет. Я ее запускаю из винды нормально, из своей программы, если пути без пробелов - нормально. А если с пробелами, то заключаю каждый параметр в двойные кавычки - не работает, даже для путей без пробелов.


 
Игорь Шевченко ©   (2005-11-09 16:26) [5]


> не работает


Ошибку какую-нибудь выдает ?


 
darvin ©   (2005-11-09 16:31) [6]

некорректное чтение ini-файла, являющегося одним из параметров. То есть не находит его, правильно путь не находит.


 
Германн ©   (2005-11-09 16:43) [7]

Попробуй вызвать ShowMessage(ExeFile + "  " +
                             """ + Param1 + "" " + """ + Param2 + """) и посмотреть глазами что ты передаешь в CreateProcess.


 
darvin ©   (2005-11-09 16:47) [8]

>Германн ©   (09.11.05 16:43) [7]
видел. Передаю то, что и должно быть


 
Leonid Troyanovsky ©   (2005-11-09 17:01) [9]


> darvin ©   (09.11.05 16:47) [8]
> видел. Передаю то, что и должно быть


Запускаешь cmd.exe
Испытываешь различные варианты (без допущений о текущей директории).
Если работающих вариантов нет - смело перемещаешь подопытное
приложение в корзину.

В качестве костылей можешь сделать bat (cmd) файл, назначающий
текущую директорию и т.д.

Кста, кавычить надо и имя исполняемоего файла (QuotedStr).

--
Regards, LVT.



Страницы: 1 вся ветка

Текущий архив: 2005.11.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.045 c
4-1127742005
NikNet
2005-09-26 17:40
2005.11.27
Где взять компонент типа TaskBar


14-1131012564
Bazi
2005-11-03 13:09
2005.11.27
Какие ограничения накладывает каждая версия Делфи?


4-1127743382
umbra
2005-09-26 18:03
2005.11.27
какое сообщение получает окно при его минимизации?


14-1129969212
useroff
2005-10-22 12:20
2005.11.27
зацените мой сайт narisoval.net.ua


1-1131005871
den_777
2005-11-03 11:17
2005.11.27
Как узнать является ли класс потокобезопасным или нет