奥维德 2016-04-23 14:08 采纳率: 100%
浏览 3405
已采纳

C#利用程序打开SLDPRT文件

我看了说是要应用SolidWorks API SDK
http://www.cnblogs.com/liong/archive/2008/05/21/1204404.html
照着这个做了一下 结果发现com组件引用不了

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;

namespace WebApplication1
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Command(object sender, CommandEventArgs e)
        {
            int IErrors = 0;
            int IWarnings = 0;
            SolidWorks.Interop.sldworks.SldWorks swApp = new SolidWorks.Interop.sldworks.SldWorks();
            swApp.OpenDoc6(@"E:\a.SLDPRT", (int)SolidWorks.Interop.swconst.swDocumentTypes_e.swDocPART, (int)SolidWorks.Interop.swconst.swOpenDocOptions_e.swOpenDocOptions_Silent, null, ref IErrors, ref IWarnings);
            swApp.Visible = true;  
        }
    }
}

最后发现
检索 COM 类工厂中 CLSID 为 {88CEE7FD-9F58-4962-8483-041AB9AD69A2} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。

我注册了啊

  • 写回答

2条回答

  • Robot-S 2016-04-23 14:12
    关注

    如何在程序中打开文件(相当于鼠标双击该文件),这里有两种方法:
    (1)使用进程打开文件,使用方法如下:
     
            string fileName = ....;    //文件绝对路径
            ......
    答案就在这里:C#中利用程序打开文件
    ----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置
  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了