尝试从 Web 应用程序打印时出错"The RPC server is unavailable"



我正在构建一个 ASP.NET 应用程序,它可以打印一些带有条形码的标签,打印机将安装到本地PC中,并将在托管应用程序的服务器中共享。

所以我的问题与域名有关,因为安装打印机的域名与服务器所在的域名不同。我尝试从本地应用程序打印,它打印正确,但是当我尝试从 Web 打印时,显示以下错误:

RPC 服务器不可用

我认为这是一个安全问题,我试图取代运行该应用程序的用户,但即便如此,该应用程序也无法正常工作。

首先,如果您正在打印,则真的不应该创建Web应用程序(或允许用户从页面本地打印条形码)。

如果必须这样做,则需要确保在执行打印代码之前,模拟对域具有打印条形码权限的用户。这段代码应该有帮助:-

using ( new Impersonator( "myUsername", "myDomainname", "myPassword" ) )
{
   ... 
   Print Code
   ...
}

模拟器类可以在这里找到:http://www.codeproject.com/Articles/10090/A-small-C-Class-for-impersonating-a-User

相关内容

最新更新