如果在 NetUserAdd 之后调用得太快,NetUserDel 会失败吗?

NetUserDel fails if called too soon after NetUserAdd?

我的 Windows 应用程序使用

在真实环境中,应用程序运行良好,因为没有人会添加用户并立即删除它。但是,我的测试是这样做的,所以它偶尔会以意外的方式在 NetUserGetInfo 或 NetUserDel 上失败。没有返回错误代码。应用程序在 Windows 7 和 Windows 10.

中静默终止

我可以想象当NetUserAdd returns时,用户帐户可能还没有在后台完全构建。在调用 NetUserDel 之前,是否有推荐的方法来检查用户帐户是否处于稳定状态?

LookupAccountName 总是成功,所以它不是一个好守卫。 NetUserGetInfo 本身偶尔会意外失败。我在 MSDN 文档中找不到其他 API(那里的例子很少)。

与其使用那些不稳定的 win32 API,不如通过 system() 调用 DOS 命令 "net user" 可以绕过这个问题。