none
求教,关于WinForm 中用户控件的和Office相关的一个问题,求教!······ RRS feed

  • 常规讨论

  • private   static   Word.ApplicationClass   wd   =   null;  
       
      //函数实现  
      1、private   void   OnClose(Word.Document   doc,   ref   bool   chancel)  
      2、private   void   OnNewDoc(Word.Document   doc)  
      3、private   void   OnOpenDoc(Word.Document   doc)  
      4、private   void   OnQuit()  
       
      //编译下列代码无法通过,语法号和编译错误语句号对应  
      1、wd.DocumentBeforeClose   +=   new   word.ApplicationEvents2_DocumentBeforeCloseEventHandler(OnClose);  
      2、wd.NewDocument   +=   new   Word.ApplicationEvents2_NewDocumentEventHandler(OnNewDoc);  
      3、wd.DocumentOpen+=   new   Word.ApplicationEvents2_DocumentOpenEventHandler(OnOpenDoc);  
      4、wd.ApplicationEvents2_Event_Quit   +=   new   Word.ApplicationEvents2_QuitEventHandler(OnQuit);  
       
      //错误如下:  
      1、无法将类型“Word.ApplicationEvents2_DocumentBeforeCloseEventHandler”隐式转换为“Word.ApplicationEvents3_DocumentBeforeCloseEventHandler”  
       
      2、无法对属性或索引器“Word.ApplicationClass.NewDocument”赋值   --   它是只读的  
      2、“Word.ApplicationEvents2_NewDocumentEventHandler”隐式转换为“Microsoft.Office.Core.NewFile”  
      2、运算符“+=”无法应用于“Microsoft.Office.Core.NewFile”和“Word.ApplicationEvents2_NewDocumentEventHandler”类型的操作数  
       
      3、无法将类型“Word.ApplicationEvents2_DocumentOpenEventHandler”隐式转换为“Word.ApplicationEvents3_DocumentOpenEventHandler”  
       
      4、目前pass   
      
    2010年1月15日 2:22

全部回复

  • 首先wd.NewDocument   是属性,你把它当成事件来用,
    所以wd.NewDocument   +=   new   Word.ApplicationEvents2_NewDocumentEventHandler(OnNewDoc);  
    这句话是错误的,不能进行绑定

    再此你的函数方法要这样写
      private void OnClose(Word.Document doc, ref   bool chancel)
            {
                ;
            }
       private void OnNewDoc(Word.Document doc) { ;}
            private void OnOpenDoc(Word.Document doc) { ;}
            private void OnQuit() { ;}


    努力+方法=成功
    2010年1月15日 2:41
  • 这些是你昨天发的那个下载网站的
    http://www.codeproject.com/KB/miscctrl/winwordcontrol.aspx

    下的源码,winwordcontrol_src,里面的用户控件的源码,

    问题是我自己去重新生成的时候一直是提示这些错误。
    改了很久,一直运行不了


    但是,他的winwordtestapp里的,.exe程序,可以直接运行,其用的dll是winwordcontrol_src的


    我的系统环境,VS2008+office2007.

    估计是系统环境的问题,想请教下如果是Office 2007应该如何解决呢?

    谢谢

    2010年1月15日 3:28
  • 他的dll是针对office 03的,
    03和07不一样


    努力+方法=成功
    2010年1月15日 3:40
  • 使用他的Dll现在有个问题。两个窗口,

    在A窗口有按钮,点击跳转B窗口,
    然后在B窗口提供一个按钮,加载Word文档。

    第一次跳转到B,一切正常。

    然后关闭B,再次点击A的按钮,出现B窗口,然后在B窗口点击加载Word文档的按钮。

    此时提示:

    rpc 服务器不可用 异常来自 HRESULT:0x800706BA。

    请教下这怎么解决?

    2010年1月15日 6:50
  • 你好
    尝试配置一下你的Web.config文件试一下
    <
    system.web>
       
    <identity impersonate="true" userName="你的用户名" password="你的密码"/>
    </system.web>
    或者把RemtoAccess服务打开试试,
    如果还不行尝试把doc对象close掉,app对象quit一下
    希望可以帮助到你
    2010年1月15日 8:41
  • 谢谢。

    但是我是WinForm的应用程序········

    服务已经打开。

    一样没有用。


    再二次点击的时候还是出现

    提示:

    rpc 服务器不可用 异常来自 HRESULT:0x800706BA。

    2010年1月15日 8:44
  • 使用的是http://www.codeproject.com/KB/miscctrl/winwordcontrol.aspx下载的用户控件。

    主要是在WinForm窗口中嵌入显示Word文档.

    但是现在一直出现这个异常

    提示:

    rpc 服务器不可用 异常来自 HRESULT:0x800706BA。


    希望有知道的朋友能够告诉下,怎么回事。谢谢

    2010年1月15日 8:48
  • 你在你的电脑上装个OFFICE03试试,可能是OFFICE组件的问题


    努力+方法=成功
    2010年1月15日 9:28
  • 刚回来,我尝试一下
    2010年1月17日 12:21
  • 刚刚试验了。在Office 2003上,一样出现这个。无效。
    2010年1月17日 16:06
  • 请问winwordcontrol出了支持office 2007版本了吗?
    2011年5月25日 7:30
  • winwordcontrol这个控件现在支持office07了吗,如果支持可以给我下载地址吗?

    2011年5月25日 7:31
  • private   static   Word.ApplicationClass   wd   =   null;  
       
      //函数实现  
      1、private   void   OnClose(Word.Document   doc,   ref   bool   chancel)  
      2、private   void   OnNewDoc(Word.Document   doc)  
      3、private   void   OnOpenDoc(Word.Document   doc)  
      4、private   void   OnQuit()  
       
      //编译下列代码无法通过,语法号和编译错误语句号对应  
      1、wd.DocumentBeforeClose   +=   new   word.ApplicationEvents2_DocumentBeforeCloseEventHandler(OnClose);  
      2、wd.NewDocument   +=   new   Word.ApplicationEvents2_NewDocumentEventHandler(OnNewDoc);  
      3、wd.DocumentOpen+=   new   Word.ApplicationEvents2_DocumentOpenEventHandler(OnOpenDoc);  
      4、wd.ApplicationEvents2_Event_Quit   +=   new   Word.ApplicationEvents2_QuitEventHandler(OnQuit);  
       
      //错误如下:  
      1、无法将类型“Word.ApplicationEvents2_DocumentBeforeCloseEventHandler”隐式转换为“Word.ApplicationEvents3_DocumentBeforeCloseEventHandler”  
       
      2、无法对属性或索引器“Word.ApplicationClass.NewDocument”赋值   --   它是只读的  
      2、“Word.ApplicationEvents2_NewDocumentEventHandler”隐式转换为“Microsoft.Office.Core.NewFile”  
      2、运算符“+=”无法应用于“Microsoft.Office.Core.NewFile”和“Word.ApplicationEvents2_NewDocumentEventHandler”类型的操作数  
       
      3、无法将类型“Word.ApplicationEvents2_DocumentOpenEventHandler”隐式转换为“Word.ApplicationEvents3_DocumentOpenEventHandler”  
       
      4、目前pass   
      


    1300733887@qq.com

    2012年4月11日 23:40