powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как забраться в папку "C:\Document And Set..\..\Главное меню"?
4 сообщений из 4, страница 1 из 1
Как забраться в папку "C:\Document And Set..\..\Главное меню"?
    #33812913
Alex_Sandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробовал FSO, Shell, Dir - никто туда не хочет лезть!
В какую сторону копать?
...
Рейтинг: 0 / 0
Как забраться в папку "C:\Document And Set..\..\Главное меню"?
    #33812936
Le0n@rd0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что-то типа отсюда почерпнуть?(кусок старого кода по созданию ярлыков в меню Пуск...)

procedure TForml.ButtonlClick(Sender: TObject);
var
WorkTable:String;
P:PItemIDList;
C:array [0..1000] of char;
begin
if SHGetSpecialFolderLocation (Handle, CSIDL_PROGRAMS,p)=NOERROR then
begin
SHGetPathFromlDList(P,C);
330 Глава 7
WorkTable:=StrPas(C)+'\My Group';
end;
if not DirectoryExists(WorkTable) then
MkDir(WorkTable);
if FileExists(WorkTable+'\'+ExtractFileName(Application.ExeName)) then
DeleteFile(WorkTable+'\'+ExtractFileName(Application.ExeName));
CreateShotCut(Application.ExeName, WorkTable + '\'+
ExtractFileNarne (Application.ExeName) , ' ') ;
end;

И, собственно, создание ярлыков(вдруг пригодится):

procedure TForml.CreateShotCut(SourceFile, ShortCutName,
SourceParams: String);
var
IUnk: IUnknown;
ShellLink: IShellLink;
ShellFile: IPersistFile;
tmpShortCutName: string;
WideStr: WideString;
i: Integer;
begin
IUnk := CreateComObject(CLSID_ShellLink);
ShellLink := IUnk as IShellLink;
ShellFile := IUnk as IPersistFile;
ShellLink.SetPath(PChar(SourceFile));
ShellLink.SetArguments(PChar(SourceParams));
ShellLink.SetWorkingDirectory(PChar{ExtractFilePath(SourceFile)));
ShortCutName := ChangeFileExt(ShortCutName,'.Ink");
if fileexists(ShortCutName) then
begin
ShortCutName := copy(ShortCutName,1,length(ShortCutName)-4);
i := 1;
repeat
tmpShortCutName := ShortCutName +'(' + inttostr(i)+ ').lnk';
inc(i);
until not fileexists(tmpShortCutName);
WideStr := tmpShortCutName;
end
else
WideStr := ShortCutName;
ShellFile.SavetPWChar(WideStr),False);
end;
...
Рейтинг: 0 / 0
Как забраться в папку "C:\Document And Set..\..\Главное меню"?
    #33812945
Le0n@rd0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
только не Basic :)

Le0n@rd0А что-то типа отсюда почерпнуть?(кусок старого кода по созданию ярлыков в меню Пуск...)

procedure TForml.ButtonlClick(Sender: TObject);
var
WorkTable:String;
P:PItemIDList;
C:array [0..1000] of char;
begin
if SHGetSpecialFolderLocation (Handle, CSIDL_PROGRAMS,p)=NOERROR then
begin
SHGetPathFromlDList(P,C);
330 Глава 7
WorkTable:=StrPas(C)+'\My Group';
end;
if not DirectoryExists(WorkTable) then
MkDir(WorkTable);
if FileExists(WorkTable+'\'+ExtractFileName(Application.ExeName)) then
DeleteFile(WorkTable+'\'+ExtractFileName(Application.ExeName));
CreateShotCut(Application.ExeName, WorkTable + '\'+
ExtractFileNarne (Application.ExeName) , ' ') ;
end;

И, собственно, создание ярлыков(вдруг пригодится):

procedure TForml.CreateShotCut(SourceFile, ShortCutName,
SourceParams: String);
var
IUnk: IUnknown;
ShellLink: IShellLink;
ShellFile: IPersistFile;
tmpShortCutName: string;
WideStr: WideString;
i: Integer;
begin
IUnk := CreateComObject(CLSID_ShellLink);
ShellLink := IUnk as IShellLink;
ShellFile := IUnk as IPersistFile;
ShellLink.SetPath(PChar(SourceFile));
ShellLink.SetArguments(PChar(SourceParams));
ShellLink.SetWorkingDirectory(PChar{ExtractFilePath(SourceFile)));
ShortCutName := ChangeFileExt(ShortCutName,'.Ink");
if fileexists(ShortCutName) then
begin
ShortCutName := copy(ShortCutName,1,length(ShortCutName)-4);
i := 1;
repeat
tmpShortCutName := ShortCutName +'(' + inttostr(i)+ ').lnk';
inc(i);
until not fileexists(tmpShortCutName);
WideStr := tmpShortCutName;
end
else
WideStr := ShortCutName;
ShellFile.SavetPWChar(WideStr),False);
end;
...
Рейтинг: 0 / 0
Как забраться в папку "C:\Document And Set..\..\Главное меню"?
    #33813174
Alex_Sandr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создание группы и ярлыков - дело почти решённое,
а вот обзор содержимого, перемещение и удаление
уже имеющихся - тёмный лес.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как забраться в папку "C:\Document And Set..\..\Главное меню"?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]