Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > запуск программы по ярлыку


Автор: delphi_ 2.7.2007, 11:46
Написал значит я программку на Delphi 7.Изображения для glyph`a кнопок она берет из файлов,которые распалагаються в лректории программы.

Проблема в том что если зайти просто в папку с программой и запустить ее то все ок.Если же создаить ярлык (как делает инсталятор Inno Setup) то прога пишет ,что не может найти файла,причем ищет их в той папке где ярлык находиться

как это исправить?

Автор: Rennigth 2.7.2007, 12:05
1. Путь до картинуи указывай не относительний на полный(находиться в ParamStr(0)) .
2. Установить текущую директорию функцией SetCurrentDirectory. 

Автор: delphi_ 2.7.2007, 12:15
Гм
дело в том что вот как оно работает-

Код

procedure TForm1.FormShow(Sender: TObject);
var
Ini:TIniFile;
begin
Ini := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'ini.ini');
   sspeedbutton5.Glyph.LoadFromFile(Ini.ReadString('glyph', 'glyph1', '1'));
...

а в Ini файле просто указано название файла который лежит в папке с программой
например 1.bmp

как тут тогда использовать параметры?

и еще я заметил что если руками создать ярлык то там указываеться рабочая папка
если создает инсталер-то нет,поэтому оно и ищет где ярлык файлы..блин

Автор: Rennigth 2.7.2007, 12:30
delphi_, Ну тыже ini ведь читаешь нормально... Религия не позволяет также поступить и с путем к картинке?

Код

var
  lFileName: string;  
begin
  lFileName := ExtractFilePath(Application.ExeName) + Ini.ReadString('glyph', 'glyph1', '1.bmp')
  if FileExists(lFileName) then
    sspeedbutton5.Glyph.LoadFromFile(lFileName);


Автор: delphi_ 2.7.2007, 13:03
спасибо  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)