在delphi中,引用ShellAPI单元,可以用shellexecute方法 打开文件所在的位置并且定位到文件,但是在文件名种含有逗号(中,英文输入法)或者有单引号(英文输入法)的时候,会提示找不到文件所在的位置。这是需要把文件的路径处理下,即可。代码如下,仅供参考:本人用的delphiXE版本 // 处理含有逗号的方法 function TForm1.TeShuFileName(FFilename: string): string; var i:Integer; newfilename:string; begin for i := 1 to Length(FFilename) do begin if (FFilename[i]=',') or (FFilename[i]=',') then newfilename :=newfilename +'"'+FFilename[i]+'"' else newfilename :=newfilename+FFilename[i];
end; Result :=newfilename; end; //以下是使用 procedure TForm1.Button2Click(Sender: TObject); var str:string; begin if OpenDialog1.Execute then begin str:=OpenDialog1.FileName; end; str:=TeShuFileName(str); ShellExecute(Handle, nil, 'Explorer.exe', PChar(Format('/e,/select,%s',[str])), nil, SW_NORMAL); end;