我的电脑上装了 office2007,程序中引用了Office组件,在客户机上不安装office2007好像会出问题,不装office2007(装了2003)怎么解决这个问题

解决方案 »

  1.   

    用反射实现VB.net中的 CreateObject("Excel.Application")
    不要用引用.引用会涉及到Office版本问题.
      

  2.   

    System.Type oType = System.Type.GetTypeFromProgID("SomeClass"); 
    object o = System.Activator.CreateInstance(oType); 
    oType.InvokeMember("SomeMethod", System.Reflection.BindingFlags.InvokeMethod, null, o, new object[] {arg1, arg2});w = oType.InvokeMember("SomeFunction", System.Reflection.BindingFlags.InvokeMethod, null, o, new object[] {arg1, arg2});
    w = oType.InvokeMember("SomeGet", System.Reflection.BindingFlags.GetProperty, null, o, null); 
    oType.InvokeMember("SomeSet", System.Reflection.BindingFlags.SetProperty, null, o, new object[] {w}); 
    (注,以上的SomeClass可以写成任何COM组件,比如Word.Application, Excel.Application等)