C# 进程。启动不';我不能在IIS中工作

C# 进程。启动不';我不能在IIS中工作,c#,iis,C#,Iis,我正在尝试通过Process.Start手动打印PDF,但它在IIS中不起作用。我在一个windows窗体应用程序中复制了相同的代码,并且成功了。我已尝试将权限授予“网络服务”用户(我的应用程序池具有网络服务权限)。我也遵循了以下步骤: 权限,或者架构(32位对64位)。看到Hi Stuart的可能副本,我已经检查了该链接,并已将所有权限授予网络服务用户(我的应用程序池的标识),但它仍然不起作用。虽然我可以在任务管理器中看到adobe exe,但它不会启动打印命令或打开打印对话框。是否尝试查看

我正在尝试通过Process.Start手动打印PDF,但它在IIS中不起作用。我在一个windows窗体应用程序中复制了相同的代码,并且成功了。我已尝试将权限授予“网络服务”用户(我的应用程序池具有网络服务权限)。我也遵循了以下步骤:


权限,或者架构(32位对64位)。看到Hi Stuart的可能副本,我已经检查了该链接,并已将所有权限授予网络服务用户(我的应用程序池的标识),但它仍然不起作用。虽然我可以在任务管理器中看到adobe exe,但它不会启动打印命令或打开打印对话框。是否尝试查看当允许它显示窗口时会发生什么情况?是的,只是再次尝试,但仍然不好。权限,或者可能是架构(32位对64位)。看到Hi Stuart的可能副本,我已经检查了该链接,并已将所有权限授予网络服务用户(我的应用程序池的标识),但它仍然不起作用。虽然我可以在任务管理器中看到adobe exe,但它不会启动打印命令或打开打印对话框。是否尝试查看当允许它显示窗口时会发生什么情况?是的,只是再次尝试,但仍然没有效果。
 string file = @"C:\test.pdf";
            string printer = "TestPrinter";

            string processFilename = Microsoft.Win32.Registry.LocalMachine
                .OpenSubKey("Software")
                .OpenSubKey("Microsoft")
                .OpenSubKey("Windows")
                .OpenSubKey("CurrentVersion")
                .OpenSubKey("App Paths")
                .OpenSubKey("AcroRd32.exe")
                .GetValue(String.Empty).ToString();

            var info = new ProcessStartInfo();
            info.FileName = processFilename;
            info.Arguments = string.Format("/h /t \"{0}\" \"{1}\"", file, printer);
            info.CreateNoWindow = true;
            info.WindowStyle = ProcessWindowStyle.Hidden;
            info.UseShellExecute = false;

            Process p = Process.Start(info);
            p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

            int counter = 0;
            while (!p.HasExited)
            {
                System.Threading.Thread.Sleep(1000);
                counter += 1;
                if (counter == 5) break;
            }
            if (!p.HasExited)
            {
                p.CloseMainWindow();
                p.Kill();
            }