![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему не работает ссылка с рабочего стола [D5, Access]
Гаврилов В.А. © (2004-11-21 19:50:00)Уважаемые мастера!
У меня в проге прописано организация ссылки на программу с рабочего стола. НО при загрузке со ссылке выдает ошибку OLE. не понятно по чему или что-то необходмо прописать дополнительно.
С уважением Виталий.
Jay (2004-11-30 12:07:00) [1]Вот нашёл у себя:
procedure CreateLink(app_path, app_arg, lnk_path: string);
var
IObject: IUnknown;
SLink: IShellLink;
PFile: IPersistFile;
begin
IObject := CreateComObject(CLSID_ShellLink);
SLink := IObject as IShellLink;
PFile := IObject as IPersistFile;
with SLink do begin
SetPath(PChar(app_path));
SetWorkingDirectory(PChar(ExtractFilePath(app_path)));
SetArguments(PChar(app_arg));
end;
PFile.Save(PWChar(WideString(lnk_path)), FALSE);
end;
Jay (2004-11-30 12:05:00) [2]В ярлыке возможно не правильно указан рабочий каталог
ЮЮ (2004-11-30 12:05:00) [3]>но ведь программа если загрузить из каталога где она находиться работает и нет проблем
а работает ли она, если ярлык создать ручками, но с пустой "рабочей директорией" ?
Vitaliygavrilov (2004-11-30 12:01:00) [4]>>скорее всего где-то неверно указаны пути к базе
но ведь программа если загрузить из каталога где она находиться работает и нет проблем
ssk (2004-11-27 19:22:00) [5]>при его использовании возникает ошибка OLE и программа не обнаруживает базу данных.
скорее всего где-то неверно указаны пути к базе
ssk (2004-11-27 19:19:00) [6]вместо sss := Reg.ReadString('Start Menu');
надо sss := Reg.ReadString('Desktop');
Гаврилов В.А. (2004-11-27 18:50:00) [7]Помогите найти ошибку в предоставленном ниже коде создания ярлыка на рабочем столе:
procedure TForm1.N16Click(Sender: TObject);
var
SSS: STRING;
defdir: string;
Reg: TRegistry;
begin
defdir := ExtractFileDir(Application.ExeName);
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CURRENT_USER;
Reg.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', False);
sss := Reg.ReadString('Start Menu');
Reg.CloseKey;
Reg.Free;
CreateLink(defdir+'\'+ExtractFileName(Application.ExeName), sss+'\Workplace.lnk', 'Расчеты', '');
end;
при его использовании возникает ошибка OLE и программа не обнаруживает базу данных.
Заранее спасибо.
С уважением Виталий Гаврилов.
Term (2004-11-21 20:25:00) [8]ошибка в 17 строке