在windows打开文件夹时,系统是调用哪个API函数 ( 积分: 100 )

  • 主题发起人 主题发起人 WirePull
  • 开始时间 开始时间
W

WirePull

Unregistered / Unconfirmed
GUEST, unregistred user!
请问,在windows打开文件夹时,Windows系统是调用哪个API函数?
 
请问,在windows打开文件夹时,Windows系统是调用哪个API函数?
 
SHBrowseForFolder<br>
 
还有SHGetPathFromIDList<br>程序示例如下:<br>//自定义函数,前提:必须uses &nbsp;ShlObj;<br>function ShellBrowserDialog(owner:HWND; const TitleName:string; StyleFlag:cardinal; var ResultPath:string):bool;<br>var<br> lpItemID : PItemIDList; &nbsp; <br> BrowseInfo : TBrowseInfo; &nbsp;<br> DisplayName : array[0..MAX_PATH] of char; <br> TempPath : array[0..MAX_PATH] of char; &nbsp;<br>begin<br> result:=false; &nbsp;<br> FillChar(BrowseInfo, sizeof(TBrowseInfo), #0); <br> BrowseInfo.hwndOwner := owner; &nbsp;<br> BrowseInfo.pszDisplayName := @DisplayName; &nbsp;<br> BrowseInfo.lpszTitle := PChar(TitleName); &nbsp; <br> BrowseInfo.ulFlags := StyleFlag; &nbsp; <br> lpItemID := SHBrowseForFolder(BrowseInfo); &nbsp;<br> if lpItemId &amp;lt;&amp;gt; nil then &nbsp;<br> &nbsp;begin<br> &nbsp; &nbsp;result:=true; &nbsp;<br> &nbsp; &nbsp;SHGetPathFromIDList(lpItemID, TempPath); &nbsp;<br> &nbsp; &nbsp;ResultPath:=TempPath; &nbsp; &nbsp;<br> &nbsp; &nbsp;GlobalFreePtr(lpItemID); &nbsp;<br> &nbsp;end;<br>end;<br>
 
樓上的都對
 
还不结贴?<br>
 
SH系列API
 
支持weiliu的方法。
 
SelectDirectory
 
后退
顶部