3 当然可以。您可以运行该功能,如果它失败并且GetLastError() == ERROR_ACCESS_DENIED,那么您需要管理权限。 来源 2011-06-27 22:26:56 bdonlan +0 GetLastError()从以前的错误列表中删除检索到的错误...随后对GetLastError()的调用将重复返回相同的最后一个错误,直到发生另一个错误? – Jeremy +0 有什么办法可以确定哪些功能需要管理权限,而无需在其上运行测试程序...也可以通过源代码解析,并查找需要更高访问权限的特定部分。例如,是否有为了成功调用需要管理访问的特定Win32 API函数的列表?谢谢! – Jeremy +1 不,没有实际的列表,因为几乎在所有情况下都取决于参数,以及参数代表什么。例如,“CreateFile”可能需要或不需要管理员权限,具体取决于您要打开的文件以及该文件的ACL。因此,无论您需要阅读函数的描述,以了解它是否使用ACL访问任何内容或需要特殊的权限,或者您可以运行该函数并查看它是否在您身上执行。 – bdonlan
GetLastError()从以前的错误列表中删除检索到的错误...随后对GetLastError()的调用将重复返回相同的最后一个错误,直到发生另一个错误? – Jeremy
有什么办法可以确定哪些功能需要管理权限,而无需在其上运行测试程序...也可以通过源代码解析,并查找需要更高访问权限的特定部分。例如,是否有为了成功调用需要管理访问的特定Win32 API函数的列表?谢谢! – Jeremy
不,没有实际的列表,因为几乎在所有情况下都取决于参数,以及参数代表什么。例如,“CreateFile”可能需要或不需要管理员权限,具体取决于您要打开的文件以及该文件的ACL。因此,无论您需要阅读函数的描述,以了解它是否使用ACL访问任何内容或需要特殊的权限,或者您可以运行该函数并查看它是否在您身上执行。 – bdonlan