System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 --->
System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 {B9425246-4131-11D2-BE48-
004005A04EDF} 的组件失败,原因是出现以下错误: 80070005 拒绝访问。 (异常来自
HRESULT:0x80070005 (E_ACCESSDENIED))。
在 BaseService.print() 位置 e:\软件项目\条码系统\扫描枪\Server\App_Code\BaseService.cs:行
号 35
--- 内部异常堆栈跟踪的结尾 ---
单独调试webservice可以运行成功,
可是通过我在扫描枪上的一个程序访问webservice运行就不行了,我在本机上做一个程序访问webservice也不行。
以下是webservice代码,单独运行webservice可以打印
[WebMethod(Description = "打印", EnableSession = true)]
public void print()
{
BarTender.Application btApp = new BarTender.Application();
BarTender.Format btFormat = btApp.Formats.Open(@"E:\btw\test.btw", false, "");
btFormat.PrintSetup.IdenticalCopiesOfLabel = 1;
btFormat.PrintSetup.NumberSerializedLabels = 1;
btFormat.PrintOut(false, false);
btApp.Quit(BarTender.BtSaveOptions.btDoNotSaveChanges);
}
以下是客户端代码,调用webservice中的代码就报上面的异常。
private void button1_Click(object sender, EventArgs e)
{
try
{
SolarServer.BaseService server = new Client.SolarServer.BaseService();
server.print();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
3 个解决方案
#1
自己顶一下,哪位大侠能帮帮忙啊
#2
test.btw 看看是否只读。
#3
不是只读的
#1
自己顶一下,哪位大侠能帮帮忙啊
#2
test.btw 看看是否只读。
#3
不是只读的