C# 如何在C中使用CreateUserProfileX#

C# 如何在C中使用CreateUserProfileX#,c#,winapi,pinvoke,C#,Winapi,Pinvoke,我正在用C#构建一个小应用程序,它可以使用Windows API在Windows XP、Windows 7和Windows 8上创建用户配置文件 对于Windows7和Windows8,这种方法工作得非常好 但是,当尝试在Windows XP上使用时,它不起作用,它返回了一个错误,通知我在“UserEnv.dll”中找不到该方法。在阅读了更多的API之后,我意识到我需要使用LoadLibrary和GetProcAddress链接到UserEnv.dll 我搜索了一些与此相关的示例,但找不到可以给

我正在用C#构建一个小应用程序,它可以使用Windows API在Windows XP、Windows 7和Windows 8上创建用户配置文件

对于Windows7和Windows8,这种方法工作得非常好

但是,当尝试在Windows XP上使用时,它不起作用,它返回了一个错误,通知我在“UserEnv.dll”中找不到该方法。在阅读了更多的API之后,我意识到我需要使用
LoadLibrary
GetProcAddress
链接到UserEnv.dll

我搜索了一些与此相关的示例,但找不到可以给我一个好主意或解释如何执行此操作的内容

如果有人能在C#中放一些样本,或者告诉我在哪里可以回顾一下,我会非常感激

在阅读了更多的API之后,我意识到我需要使用LoadLibrary和GetProcAddress链接到Userenv.dll

:

此函数未在软件开发工具包(SDK)标题中声明,并且没有关联的导入库。必须使用LoadLibrary和GetProcAddress函数链接到Userenv.dll。函数的ANSI版本CreateUserProfileExA作为序号153从Userenv.dll引用。Unicode版本CreateUserProfileXw被引用为序号154

:

此外,在Windows中,您可以按顺序值绑定到导出的DLL函数。如果需要执行此操作,则诸如“#1”或“#129”之类的入口点值表示DLL中非托管函数的序号值,而不是函数名


对于不同的API,有这样的示例,但对于所有Win32 API,过程是相同的,如下所示: