这要看看这是什么函数了,对于一般的api只要uses windows 就可以了。不过还是找不到,你就多use 几个单元,比如shellapi,shlobj,activeX等,如果还不行,那说明这些单元没有提供。这时,你就要查SDK帮助了。根据win32 SDK 的说明,把该函数用pascal 语法重新声明,然后引出即可。比如,
对于函数
SHGetFolderPath Function
msdn中是这样描述的,
Takes the CSIDL of a folder and returns the pathname.
Syntax
HRESULT SHGetFolderPath( HWND hwndOwner,
int nFolder,
HANDLE hToken,
DWORD dwFlags,
LPTSTR pszPath
);
Parameters介绍(略)..
在delphi 的单元接口中,声明
function SHGetFolderPath(hwndOwner : HWND;
nFolder : Integer;
hToken : HWND;
dwFlags : Word;
pszPath : PChar): Boolean; stdcall;
在delphi的单元实现中,如下实现该函数:
function SHGetFolderPath;external 'shell32.dll' name 'SHGetFolderPath' ;
其中可以看出,这里引出的是shell32.dll 中的SHGetFolderPath函数。