本文整理自网络,侵删。
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ActiveX, ComObj, ShlObj, StdCtrls, shellAPI; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);var Int_link : IShellLink; int_File : IPersistFile; SFileName : WideString; DirName : String; OutPutFileName : PChar; WinData : win32_find_data;begin SFileName := PChar(edit1.Text); Int_link := CreateComObject(CLSID_Shelllink) as IShellLink; int_File := Int_link as IPersistFile; int_File.Load(pwchar(SFileName), STGM_READ); Setlength(DirName, MAX_PATH); OutPutFileName := PChar(DirName); Int_link.GetPath(OutPutFileName, max_path, WinData, 0); Edit2.text := OutPutFileName;end; end.
相关阅读 >>
Delphi android实例-红外线操作(xe10.2+小米5)
Delphi 用正则表达式获取指定的字符串续取出所有符合要求的字符串
更多相关阅读请进入《Delphi》频道 >>