Главная страница
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.47 MB
Время: 0.184 c
15-1263542306
ocean
2010-01-15 10:58
2010.08.27
Можно ли покупать плазму?


15-1264578016
pavel_guzhanov
2010-01-27 10:40
2010.08.27
нужна программа типа ErWin


2-1275197810
Радость
2010-05-30 09:36
2010.08.27
Инструмент нужен


15-1274432547
boriskb
2010-05-21 13:02
2010.08.27
Можно не всё сразу а выборочно?


15-1270033255
pasha_golub
2010-03-31 15:00
2010.08.27
DLL средствами MSVC Express 2008