![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
Ilia |
![]()
Сообщение
#1
|
Гость ![]() |
Пожалуйста помогите сделать во-что. Значит при нажатии на фаил *.ххх прога открывает программу( с этим проблем нет), а вот как из этого файла прочесть данные ??? (меня интересует как програма узнает путь к ниму и где он хранится, открать файл то понятно как)
|
mj |
![]()
Сообщение
#2
|
![]() Adminь ![]() ![]() ![]() ![]() Группа: Администраторы Сообщений: 803 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Имена файлов Windows передаёи в коммандной строке, получить коммандную строку можно функцией GetCommandLine или через функцию ParamStr(X), где X - номер параметра (файла), а количество параметров можно получить функцией ParamCount. ParamStr(0) возвращает имя запущенной программы.
|
Ilia |
![]()
Сообщение
#3
|
Гость ![]() |
У меня получается, что независимо от того, какой фаил я открываю этой прогой, GetCommandLine передает всегда путь к exe'шнику программы.
Допустим я открываю *.ххх файл - появляется ошибка : не могу открыть с:......прога.exe "c:*.ххх" - и все. Может что-то еще надо писать, может параметры вызова GetCommandLine, хотя я смотрел, их нет. P.S. ParamCount возвращает один параметр - 0. Соответственно ParamSrt(0) строку пути к экзешнику. Другие ParamSrt(1,2,3,4...) - у меня нет и они ничего не возвращают!!! |
drug |
![]()
Сообщение
#4
|
Гость ![]() |
Тут небольшая замутка, но все работает (проверил в Delphi).
ParamCount -это число параметров после собственно названия программы, а ParamStr - это список всех аргументов коммандной строки, т.е. ParamStr(0)-это прога, ParamStr(1)-это файл, который нужно открыть и т.д. Далее в хелпе указано: для составных (неск. слов) имен файлов или папок надо использовать кавычки. Все, чем могу. |
Ilia |
![]()
Сообщение
#5
|
Гость ![]() |
Cool - я въехал, спасибо drug, все работает - ок.
Еще раз спосибо всем! |
![]() ![]() |
![]() |
Текстовая версия | 22.06.2024 16:01 |