C#对于latebinding的确没有特别支持,就像C++那样;)
但是由于.NET程序的跨语言特性非常好,和latebinding的部分可以分离出来使用VisualBasic.NET做,对整体应用的结构不会有什么影响。
如果是静态帮定的话,可以用aximp, tlbimp包装一个CCW,然后调用就像.NET组件一样方便了。

解决方案 »

  1.   

    要玩后帮定的话去看reflection吧~
      

  2.   

    reflection作后帮定不容易玩得说... :)
      

  3.   

    因为象word9.olb,word10.olb,excel9.olb这类东东是unmanaged,所以第一
    步是把这些个库转成.net能用的形式(以word为例)1.使用Tlbimp这个工具将word9.0的对象库文件word9.olb转换成为dll,这样才能做为.Net平台Assembly来使用:)操作如下: 
    TlbImp word9.olb word.dll 
    只要有了这个Excel.dll,现在我们就能使用Excel的各种操作函数了。
    "word9.olb"文件在安装office2000后的目录中
    2.把这个dll考到自己的文件夹下
    3.
    Word.Application myWord = new Word.Application ( ) ;
    0A
    Excel.Application myExcel = new Excel.Application ( ) ;......
    就可以用了
      
    ================================================================
    ---     湘江水逝楚云飞     ---
    ★★ 楚云飞  ●  
      
      

  4.   

    http://www.dotnetjunkies.com/tutorials.aspx?tutorialid=337
      

  5.   

    我试了,好像跟直接将excel9.olb添加引用效果一样,excel是可以打开了但又遇到
    xlBook = xlApp.Workbooks.Add("E:\\MY PROJECTS\\sdf");
    时“ 无法将类型“Excel._Workbook”隐式转换为“Excel.Workbook””
    的错误,我看了好像Excel._WorkBook是个Interface,我一遇到下划线就犯怵,
    不知道具体该怎样在这里正确转换类型,还请大家多多帮忙;
      

  6.   

    我代码如下,在vs.net英文正式版下通过,无问题:0D1.先按我的上贴将excel.dll加入自己的project,
    2.在程序中加入如下代码:
    0DExcel.Application myExcel = new Excel.Application ( ) ;
    0Astring fname="f:\\book1.xls";0D
            myExcel.Visible = true ;
    myExcel.Application.Workbooks.Add(fname)  ;
    3. good luck!
    ================================================================
    ---     湘江水逝楚云飞     ---
      

  7.   

    上贴中的0A OD是csdn助手加上去的,程序本当没有,可能是bug
    ================================================================
    ---     湘江水逝楚云飞     ---
      

  8.   

    谢谢,我在http://groups.google.com/groups?q=C%23+excel&hl=en&selm=mGUtR1GwBHA.1532%40cpmsftngxa09&rnum=4
    找到了答案,不过还是要谢谢你们,这个问题里主要是一个cast的处理。