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

Вниз

Место положение .exe   Найти похожие ветки 

 
Nathan   (2010-05-23 20:48) [0]

Столкнулся с проблемой. Для получения место положения программы использовал код:

function AppPath: string;
begin
 Result := ExtractFilePath(Application.ExeName);
end;

Далее типа:  INI := TIniFile.Create(AppPath +"\" + "setting.ini");    
Все работало прекрасно, пока не  не потребовалось открыть ассоциированный файл с программой. Вот тут и начались подводные камни. Функция возвращает путь файла, а не программы. Так же, если в .nix под wine запустить по ссылки путь будет браться путь ссылки, а не там где лежит программа.
Так понимаю, что привет ты возникают из за передачи параметров ParamStr.
Вот и не пойму как разрулить эту ситуации. Может кто помочь?


 
antonn ©   (2010-05-23 20:51) [1]

ExtractFilePath() возвращает путь уже со слешем.
c getcurrentdirectory() не путаете?


 
Ega23 ©   (2010-05-23 20:57) [2]

смотри ParamStr, ParamCount.
Объекта Application может и не быть.


 
Nathan   (2010-05-23 21:01) [3]

Действительно со сплешем ошибочка вышла, писал по памяти, зачем то воткнул. Понимаю, что привет из за:
procedure TForm.FormShow(Sender: TObject);
var
 str: string;
 i: Integer;
begin
 if (ParamCount > 0) then
 begin
   Str := ParamStr(1);
   for i := 2 to ParamCount do
   begin
     Str := Str + " " + ParamStr(i);
   end;
   ManualOpen(Str);
 end;
end;
Вот и не знаю, что с этим делать


 
antonn ©   (2010-05-23 21:13) [4]

ParamStr(0) содержит полный путь к программе. ParamCount указывает на кол-во переданных параметров программе.


 
Игорь Шевченко ©   (2010-05-23 21:59) [5]


> Вот и не знаю, что с этим делать


справку читать



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

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

Наверх




Память: 0.48 MB
Время: 0.085 c
15-1262347734
Kerk
2010-01-01 15:08
2010.08.27
Мысли про различия и эволюцию


15-1264632229
Германн
2010-01-28 01:43
2010.08.27
RDTSC и её использование в VB 2008 Express Edition


9-1186833611
AlexanderMS
2007-08-11 16:00
2010.08.27
Проблема с прозрачностью.


8-1204709161
IGray
2008-03-05 12:26
2010.08.27
Как создать объект DirectDraw на втором мониторе?


2-1270465711
Чайник
2010-04-05 15:08
2010.08.27
Возвращаемое значение ShowModal