C# 使用Web服务时Infopath COM对象身份验证失败

C# 使用Web服务时Infopath COM对象身份验证失败,c#,winforms,sharepoint,infopath,C#,Winforms,Sharepoint,Infopath,因此,我有一个windows窗体应用程序,它从sharepoint库加载infopath表单(.xml),并对其进行一些处理。我用它创建了一个exe,我只是通过cmd向它提供了一个sharepoint库url,然后它就会调出表单。 我还有一个在IIS服务器上运行的web服务,它调用exe并为特定用户显示infomartion。现在的问题是,当我从当时的web服务调用exe时,它一直在请求登录提示。因此,我认为web服务必须作为系统帐户运行,并且我通过多种方式提供credentals WebReq

因此,我有一个windows窗体应用程序,它从sharepoint库加载infopath表单(.xml),并对其进行一些处理。我用它创建了一个exe,我只是通过cmd向它提供了一个sharepoint库url,然后它就会调出表单。 我还有一个在IIS服务器上运行的web服务,它调用exe并为特定用户显示infomartion。现在的问题是,当我从当时的web服务调用exe时,它一直在请求登录提示。因此,我认为web服务必须作为系统帐户运行,并且我通过多种方式提供credentals

WebRequest=WebRequest.Create(sharepoint\uURL); request.Credentials=CredentialCache.DefaultNetworkCredentials; 或 request.Credentials=newnetworkcredential(“,”)

我还尝试了System.Net.CredentialCache mycache=new System.Net.CredentialCache()

添加(formUrlName,“Basic”,new System.Net.NetworkCredential(“,”);和 request.Credentials=mycache

但每次都会引发异常…Infopath无法打开此frm…此表单上的签名不是来自受信任的发布者

然后,我尝试将我的项目与web服务一起加载,并创建一个新表单(form form2=new form()),但首先要执行身份验证过程。现在我得到一个http 401未经授权的错误

(我使用FormControl.Open(url)从sharepoint库中打开表单)

我做错了什么

更新:


我与sharepoint库管理员进行了核对……显然,根本没有收到凭据。我不知道它们是否发送不正确,或者sharepoint是否只是删除凭据而不接受凭据。

您使用的sharepoint版本是..2007还是2010。。?您是否在Web服务中使用System.Diagnostics.Process来调用可执行文件。?我正在使用sharepoint 2007..是的,最初我使用了它,但后来我删除了可执行文件,只是从Web服务中将表单作为对象调用。但我在这两个过程中都遇到了错误。您是否正在使用System.Diagnostic并创建一个流程..?请尝试此链接,看看是否有帮助-我已经提到过。在此之前,exe无法从web服务启动。完成他们提到的操作后,登录提示开始出现。