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

Поиск:

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


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



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

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



Может вопрос тупой но мне интересно.
Когда перетаскиваем файл с исходником на компилятор, то запускается этот компилятор и компилирует именно тот исходник который на тнего перетащили.
Я написал прогу, перетаскиваю на нее файл и она просто запускается. т.е. чистая без того файла.
PM MAIL ICQ Skype   Вверх
Sartorius
Дата 18.12.2006, 19:58 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



ииии smile  Он просто в командной строке передается
PM MAIL ICQ   Вверх
gambit
Дата 18.12.2006, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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



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

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



Что иииии. Как реализовать то.
PM MAIL ICQ Skype   Вверх
Sartorius
Дата 18.12.2006, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



gambit, я ж те написал 
Цитата

Он просто в командной строке передается 

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


Эксперт
****


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

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



filename := ParamStr(1);
PM MAIL   Вверх
Alexeis
Дата 18.12.2006, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


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

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



Цитата(Snowy @  18.12.2006,  20:36 Найти цитируемый пост)
filename := ParamStr(1);

Неа не так.
Вот так smile
Код

for i := 1 to ParamCount 
do
  filename := filename + ParamStr(i) + ' ';


p.s. Если путь к файлу содержит пробелы, то тогда строка разбивается на несколько фрагментов.


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

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

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


Эксперт
****


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

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



Цитата(alexeis1 @  18.12.2006,  20:59 Найти цитируемый пост)
Если путь к файлу содержит пробелы, то тогда строка разбивается на несколько фрагментов. 
не правило. но отчего зависит не знаю



--------------------
Обижено школьников: 8
PM MAIL   Вверх
Sartorius
Дата 18.12.2006, 21:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

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



bems, иногда в кавычки заключается. Тада не разбивается
PM MAIL ICQ   Вверх
Alexeis
Дата 18.12.2006, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


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

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



Цитата(bems @  18.12.2006,  21:06 Найти цитируемый пост)
не правило

Может и не правило, но мой вариант всегда прокатывает, а первый не всегда. Я сам наступил на эти грабли, так что говорю по своему опыту  smile

Добавлено @ 21:23 
Не знаю как вы туда кавычки добавляете... это же система сама передает. Вот только что еще раз протесил. Все пути содержащие пробел делятся по пробелам.


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

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

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


Опытный
**


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

Репутация: 1
Всего: 19



alexeis1, если передать в качестве параметра строку "c:\my dir\file name.txt", то пробелы не будут служить разделителями, поэтому можно использовать ParamStr(1).


--------------------
...все в мире относительно
PM   Вверх
VICTAR
Дата 18.12.2006, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



alexeis1, а если в командной строке несколько файлов, то какая же мешанина получится в filename?!
PM MAIL   Вверх
Snowy
Дата 18.12.2006, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Если нужна вся коммандная строка целиком, то не нужно ничего склеивать:
Код
  filename := GetCommandLine;
Но это не требуется - все параметры должны резаться.
Если файлов несколько, то
Код
var
  i:  integer;
begin
  for i := 1 to ParamCount do
    MyProc(ParamStr(i));
end;
и в MyProc нужно уже брать имя файла и делать с ним что нужно.
PM MAIL   Вверх
Alexeis
Дата 18.12.2006, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


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

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



Цитата(VICTAR @  18.12.2006,  22:05 Найти цитируемый пост)
alexeis1, а если в командной строке несколько файлов, то какая же мешанина получится в filename?! 

Не уверен, скорее всего запустятся несколько экземпеляров приложения.

Цитата(Nicholas_S @  18.12.2006,  21:45 Найти цитируемый пост)
если передать в качестве параметра строку "c:\my dir\file name.txt", то пробелы не будут служить разделителями, поэтому можно использовать ParamStr(1). 

Ситуация несколько иная :
Цитата(gambit @  18.12.2006,  19:54 Найти цитируемый пост)
Я написал прогу, перетаскиваю на нее файл и она просто запускается. т.е. чистая без того файла. 




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

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

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


Эксперт
***


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

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



И все-таки, правильно делать так, как говорит Snowy, хотя иногда(очень редко) это не срабатывает... 
PM MAIL   Вверх
bems
Дата 18.12.2006, 23:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(alexeis1 @  18.12.2006,  21:19 Найти цитируемый пост)
 это же система сама передает. Вот только что еще раз протесил. Все пути содержащие пробел делятся по пробелам. 
система вообще передает строку целиком. Отсюда и разные разделители у разных программ



--------------------
Обижено школьников: 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.1219 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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