我在SHCreateDirectoryEx的文档中看到它在Windows XP SP2或2003之后的Windows版本中可能不可用。具体来说,它说:
此功能可通过Windows XP Service Pack 2(SP2)和 Windows Server 2003.后续版本可能会被更改或不可用 Windows版本
但现在它的地位如何?它在Vista / 7中可用吗?使用是否安全?
答案 0 :(得分:4)
除非明确说明,否则它应该可用,但您始终可以使用GetProcAddress(GetModuleHandle(_T("Shell32.dll"),_T("SHCreateDirectoryEx"))
来检查(或使用dumpbin)。
根据dumpbin,它在Windows Server 2008 R2 SP1中可用,它使用与Windows 7类似的内核,所以我说它可用,但可能在将来的版本中被删除(又名MS希望你避免使用它,如果可能的)。