Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> открыть прогу файлом. 
V
    Опции темы
Snowy
Дата 19.12.2006, 02:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(VICTAR @  18.12.2006,  22:24 Найти цитируемый пост)
отя иногда(очень редко) это не срабатывает... 
Если это не сработает, значит коммандная строка составлена неправильно.
Но в данном случае это исключено smile
PM MAIL   Вверх
VICTAR
Дата 19.12.2006, 07:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1108
Регистрация: 6.10.2006

Репутация: 37
Всего: 80



Хотя, если, программа открывает определенный тип файла(закрепленный за ней), то при регистрации своего расширения можно заключить параметр %1 в кавычки. Тогда уж точно не будет никаких проблем с пробелами.
PM MAIL   Вверх
Snowy
Дата 19.12.2006, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Не нужно ничего заключать.
Винда сама всё правильно сделает.
Лишние кавычки только напортачут.

ЗЫ. Насчёт нескольких файлов - это мы нагородили.
Файл всегда один - в ParamStr(1), ну или не одного smile
Если бросят несколько файлов, то запустится несколько экземпляров программы - по одному на каждый файл.
PM MAIL   Вверх
gambit
Дата 19.12.2006, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: нет
Всего: 40



А приятно когда вопрос так обсуждают.
PM MAIL ICQ Skype   Вверх
VICTAR
Дата 19.12.2006, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1108
Регистрация: 6.10.2006

Репутация: 37
Всего: 80



Не хочу никого обидеть, и все-таки:
Цитата

Не нужно ничего заключать.
Винда сама всё правильно сделает.
Лишние кавычки только напортачут.

Один раз мне помогли только кавычки, прога упорно не хотела открывать файл, и дело оказалось как раз в пробеле в пути к файлу.
Цитата

ЗЫ. Насчёт нескольких файлов - это мы нагородили.
Файл всегда один - в ParamStr(1), ну или не одного 
Если бросят несколько файлов, то запустится несколько экземпляров программы - по одному на каждый файл. 

Должен запуститься один экземпляр программы и все параметры передадутся в него 
соответсвенно в ParamStr(i). Это легко проверить, например загружая имя каждого файла в Memo.

PM MAIL   Вверх
Snowy
Дата 19.12.2006, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(VICTAR @  19.12.2006,  11:19 Найти цитируемый пост)
Один раз мне помогли только кавычки, прога упорно не хотела открывать файл, и дело оказалось как раз в пробеле в пути к файлу.
Сейчас проверил - нормально всё передаётся.

Цитата(VICTAR @  19.12.2006,  11:19 Найти цитируемый пост)
Должен запуститься один экземпляр программы и все параметры передадутся в него соответсвенно в ParamStr(i).
Это если бросить на ярлык.
А, если по ассоциации, то только один.

Добавлено @ 11:52 
Код для проверки:
Код

procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
  with Memo1.Lines do begin
    Add('Params: ' + IntToStr(ParamCount));
    for i := 1 to ParamCount do Add(ParamStr(i));
  end;
end;
Бросаем на форму TMemo. Создаём у формы OnCreate.
Компилим.
Ярлык на ехе бросаем на стол.
Переносим несколько файлов из Program Files или Моих Документов (или т.п.).
PM MAIL   Вверх
VICTAR
Дата 19.12.2006, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1108
Регистрация: 6.10.2006

Репутация: 37
Всего: 80



Да, извиняюсь, погорячился. Я как раз и имел ввиду перетащить, а не открыть...
PM MAIL   Вверх
Alexeis
Дата 19.12.2006, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Не понял, разве есть разница между тем чтобы кидать файлы на ярлык или на саму программу? Или речь идет о запуске при помощи меню правой кнопки т.е. через ассоциации. 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Snowy
Дата 19.12.2006, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Цитата(alexeis1 @  19.12.2006,  12:55 Найти цитируемый пост)
Не понял, разве есть разница между тем чтобы кидать файлы на ярлык или на саму программу?
Конечно есть.
В первом случае программа запускается и пути к файлам передаются ей в коммандной строке.
Во втором случае программа должна реализовывать механизм Drag&Drop для принятия файлов.

Цитата(alexeis1 @  19.12.2006,  12:55 Найти цитируемый пост)
Или речь идет о запуске при помощи меню правой кнопки т.е. через ассоциации. 
А ассоциации - третий способ smile
Здесь вопрос о перетаскивании на ярлык программы.
То есть самый простой из данных способов (по реализации разумеется).
PM MAIL   Вверх
Alexeis
Дата 19.12.2006, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Блин неправильно сказал.  Я имел ввиду другое есть ли разница перетащить файлы на экзешник или на ярлык к экзешнику. Вроде должно быть все равно.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Snowy
Дата 19.12.2006, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Разумеется. В данном случае разницы нет.
Просто обычно на рабочий стол бросают ярлыки smile
PM MAIL   Вверх
Alexeis
Дата 19.12.2006, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Прикольно! 2000 винда запихивает весь путь в один параметр, а вот домашняя хрюшаСП2 разбивает путь к файлу по пробелам, в результате чего один файл может состоять из 3-х и более параметров!


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Snowy
Дата 19.12.2006, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



У меня хомякSP2 - передаёт корректно.
PM MAIL   Вверх
Alexeis
Дата 19.12.2006, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(Snowy @  19.12.2006,  13:52 Найти цитируемый пост)
У меня хомякSP2 - передаёт корректно. 

Блин! Опять глюк делфей  smile 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
bems
Дата 19.12.2006, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Цитата(alexeis1 @  19.12.2006,  14:12 Найти цитируемый пост)
Блин! Опять глюк делфей
это почему?



--------------------
Обижено школьников: 8
PM MAIL   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1142 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.