Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизМесто положение .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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.065 c