C++ 删除windows帐户时,如何删除c:\users下用户帐户的文件夹?
我正在尝试以编程方式删除windows帐户及其在C++ 删除windows帐户时,如何删除c:\users下用户帐户的文件夹?,c++,windows,C++,Windows,我正在尝试以编程方式删除windows帐户及其在windows 2008R2中的c:\Users下的相应文件夹 我在程序中调用net user[user name]/delete命令,但它不会删除c:\users下的文件夹“user name”。deletfile功能不起作用:错误代码为5。 有办法解决吗?错误代码5表示“访问被拒绝”。要修复此问题,请检查本地系统帐户是否具有删除该文件夹的权限。您可以使用“cacls”从命令行执行此操作。默认情况下,LocalSystem应该作为Administ
windows 2008R2
中的c:\Users
下的相应文件夹我在程序中调用
net user[user name]/delete
命令,但它不会删除c:\users
下的文件夹“user name”。deletfile
功能不起作用:错误代码为5
。
有办法解决吗?错误代码5表示“访问被拒绝”。要修复此问题,请检查本地系统帐户是否具有删除该文件夹的权限。您可以使用“cacls”从命令行执行此操作。默认情况下,LocalSystem应该作为Administrators组的成员具有访问权限,但该权限可能已被删除。如果缺少该文件夹,请首先获取该文件夹的所有权
另一个问题可能是文件夹“正在使用”,即打开了一个句柄,并设置了拒绝删除以进行共享。这更难解决。您可能需要先注销用户,或者等待,然后重试。您不能只删除一个目录。您必须显式地遍历目录的内容,删除每个文件并删除每个子目录
另外,请注意,用户配置文件文件夹的名称并不总是与用户名相同。映射存储在注册表的某个位置。您是否尝试过使用“del/s C:\Users\whatever”的shell执行?5访问被拒绝,因此运行deletefile的用户缺少足够的权限permissions@AlexK.:在这种情况下,拒绝访问消息是因为不允许您执行某些特定于文件的操作(包括DeleteFile)在目录上。在这种情况下,出现“拒绝访问”是因为不允许您在目录上执行某些特定于文件的操作(包括DeleteFile)。是的,您是非常正确的。注意:不要在凌晨1点回答堆栈溢出问题。你错过了简单的东西,谢谢。Microsoft在目录上提供了一些特定的功能。我以系统服务(LocalSystem帐户)的形式运行应用程序。看起来DeleteFile只能在“文件”或空“目录”上运行。现在我改用“SHFileOperation”,它可以工作了。