C# 如何使Microsoft.VisualBasic.FileSystem在Windows服务中正常工作?
我正在尝试创建自动复制应用程序,一旦USB闪存插入,然后服务开始复制。。我已经用Windows窗体应用程序完成了,它工作得很好。当服务开始复制时,会弹出“复制”对话框。 但是,当我在Windows服务应用程序中实现Microsoft.VIsualBasic.FIlesystem时,它不会显示“复制”对话框,它只是复制而没有任何通知 这是我的密码C# 如何使Microsoft.VisualBasic.FileSystem在Windows服务中正常工作?,c#,vb.net,windows-services,copy-paste,C#,Vb.net,Windows Services,Copy Paste,我正在尝试创建自动复制应用程序,一旦USB闪存插入,然后服务开始复制。。我已经用Windows窗体应用程序完成了,它工作得很好。当服务开始复制时,会弹出“复制”对话框。 但是,当我在Windows服务应用程序中实现Microsoft.VIsualBasic.FIlesystem时,它不会显示“复制”对话框,它只是复制而没有任何通知 这是我的密码 private void BackupWithVisual() { sourceDir = "D:\\images";
private void BackupWithVisual()
{
sourceDir = "D:\\images";
DriveInfo[] ListDrives = DriveInfo.GetDrives();
foreach (DriveInfo Drive in ListDrives)
{
if (Drive.DriveType == DriveType.Removable)
{
USBLocation = Drive.RootDirectory.ToString() + "Backup\\" + DateTime.Now.ToString("MMMM") + "\\" + DateTime.Now.ToString("ddMMyy");
}
}
eventLog1.WriteEntry(USBLocation);
Directory.CreateDirectory(sourceDir);
if (!System.IO.Directory.Exists(USBLocation))
{
System.IO.Directory.CreateDirectory(USBLocation);
}
FileSystem.CopyDirectory(sourceDir, USBLocation, UIOption.AllDialogs, UICancelOption.DoNothing);
}
在我的最后一行代码中,我使用windows对话框进行复制,就像我们使用CTRL+C然后CTRL+V一样,在windows窗体应用程序中,它工作得非常好!但在windows服务中,对话框不会显示,它只是在后台复制,我已经将我的服务设置为允许与桌面交互。有什么我遗漏的吗?如果您的服务在LOCALSYSTEM帐户下运行,那么您可以选中“允许服务与桌面交互”,以了解如果无法显示UI将失败的旧服务的好处。但它无论如何也帮不了你,因为UI将在会话0中显示,而在会话0中它从未出现过
您可以在此处阅读有关会话0的mor:windows服务“无法”访问gui。登录选项卡中写入“允许服务与桌面交互”的功能如何?请参阅windows服务常见问题解答。将问题标记为已回答