以下是建文件的方式,如何修改为文件夹的?procedure CreateLink(sphotopath:WideString;LinkName:string;slinkpath:string);
var
lvs_FileName,lvs_StartupFilename:string;
lvo_Object:IUnknown;
lvo_SLink:IShellLink;
lvo_PFile:IPersistFile;
lvo_PIDL : PItemIDList;
lvs_StartupDirectory : array[0..MAX_PATH] of Char;
lvs_LinkFilename : WideString;
begin
lvs_StartupFilename := sphotopath ; lvo_Object := CreateComObject(CLSID_ShellLink);
lvo_SLink := lvo_Object as IShellLink;
lvo_PFile := lvo_Object as IPersistFile; lvo_SLink.SetPath(pChar(lvs_StartupFilename));
lvo_SLink.SetWorkingDirectory(PChar(ExtractFilePath(lvs_StartupFilename)));
lvs_FileName := '\'+LinkName+'.lnk';
lvs_LinkFilename := slinkpath+ lvs_FileName;
lvo_PFile.Save(pWChar(lvs_LinkFilename),FALSE);
end;
var
lvs_FileName,lvs_StartupFilename:string;
lvo_Object:IUnknown;
lvo_SLink:IShellLink;
lvo_PFile:IPersistFile;
lvo_PIDL : PItemIDList;
lvs_StartupDirectory : array[0..MAX_PATH] of Char;
lvs_LinkFilename : WideString;
begin
lvs_StartupFilename := sphotopath ; lvo_Object := CreateComObject(CLSID_ShellLink);
lvo_SLink := lvo_Object as IShellLink;
lvo_PFile := lvo_Object as IPersistFile; lvo_SLink.SetPath(pChar(lvs_StartupFilename));
lvo_SLink.SetWorkingDirectory(PChar(ExtractFilePath(lvs_StartupFilename)));
lvs_FileName := '\'+LinkName+'.lnk';
lvs_LinkFilename := slinkpath+ lvs_FileName;
lvo_PFile.Save(pWChar(lvs_LinkFilename),FALSE);
end;
传入文件夹试过不行?应该也是当文件创建一样的啊