{"id":506,"date":"2022-10-24T17:15:00","date_gmt":"2022-10-24T09:15:00","guid":{"rendered":"http:\/\/localhost:8080\/?p=506"},"modified":"2022-10-24T17:15:00","modified_gmt":"2022-10-24T09:15:00","slug":"c-solidworks-%e4%ba%8c%e6%ac%a1%e5%bc%80%e5%8f%91-api-%e6%9b%bf%e6%8d%a2%e5%b7%a5%e7%a8%8b%e5%9b%be%e8%a7%86%e5%9b%be%e5%bc%95%e7%94%a8","status":"publish","type":"post","link":"https:\/\/blog.ke-zhi.com\/?p=506","title":{"rendered":"C# SolidWorks \u4e8c\u6b21\u5f00\u53d1 API-\u66ff\u6362\u5de5\u7a0b\u56fe\u89c6\u56fe\u5f15\u7528"},"content":{"rendered":"<h1> <a href=\"https:\/\/www.cnblogs.com\/solidworksapi\/p\/17369376.html\" target=\"_blank\" rel=\"nofollow noopener\"> <span>C# SolidWorks \u4e8c\u6b21\u5f00\u53d1 API-\u66ff\u6362\u5de5\u7a0b\u56fe\u89c6\u56fe\u5f15\u7528<\/span> <\/a> <\/h1>\n<p>1024-\u7a0b\u5e8f\u5458\u7684\u8282\u65e5\u3002<br \/> \u4f46\u4e3a\u4ec0\u4e48\u4e0d\u653e\u5047\u5462\uff1f<br \/> \u4eca\u5929\u4e3b\u8981\u662f\u4e3a\u4e86\u62ff\u4e2a\u5fbd\u7ae0\uff0c\u987a\u4fbf\u5b8c\u6210\u8fd9\u4e2a\u6708\u7684\u5c0f\u76ee\u6807\u3002<br \/> <img decoding=\"async\" src=\"https:\/\/img-blog.csdnimg.cn\/848895d477b347b19f745a0100a3c4c4.png\" class=\"aligncenter\"><br \/> \u8fd9\u4e2a\u529f\u80fd\u4e4b\u524d\u63d0\u8fc7\uff0c\u611f\u89c9\u597d\u50cf\u6709\u5f88\u591a\u5c3a\u5bf8\u7684\u65f6\u5019\u5173\u8054\u53ef\u80fd\u4f1a\u4e22\u5931\u5427\u3002<br \/> \u4f46\u60f3\u60f3\u8fd9\u4e2a\u6709\u4e9b\u60c5\u51b5\u8fd8\u53ef\u80fd\u7528\u7684\u5230\uff0c\u5c31\u5148\u5199\u4e0b\u6765\u5145\u4e2a\u6570\u5427\u3002<\/p>\n<pre><code>        <span>\/\/\/ &lt;summary&gt;<\/span>\n        <span>\/\/\/ \u5de5\u7a0b\u56fe\u66ff\u6362\u6587\u4ef6\u5f15\u7528<\/span>\n        <span>\/\/\/ &lt;\/summary&gt;<\/span>\n        <span>\/\/\/ &lt;param name=\"sender\"&gt;&lt;\/param&gt;<\/span>\n        <span>\/\/\/ &lt;param name=\"e\"&gt;&lt;\/param&gt;<\/span>\n        <span>private<\/span> <span><span>void<\/span><\/span> <span>btnReplaceModelForView_Click<\/span><span>(<\/span><span><span>object<\/span><\/span> sender<span>,<\/span> <span>EventArgs<\/span> e<span>)<\/span>\n        <span>{<\/span>\n            <span><span>var<\/span><\/span> actPath <span>=<\/span> <span>RegDllPath<\/span><span>(<\/span><span>\"\"<\/span><span>)<\/span><span>;<\/span>\n\n            <span><span>var<\/span><\/span> start <span>=<\/span> actPath<span>.<\/span><span>Substring<\/span><span>(<\/span><span>0<\/span><span>,<\/span> actPath<span>.<\/span><span>IndexOf<\/span><span>(<\/span><span>\"CSharpAndSolidWorks\"<\/span><span>,<\/span> <span>0<\/span><span>)<\/span><span>)<\/span><span>;<\/span>\n\n            <span><span>var<\/span><\/span> oldPartName <span>=<\/span> <span><span>$@\"<\/span><span><span>{<\/span><span>start<\/span><span>}<\/span><\/span><span>CSharpAndSolidWorks\\CSharpAndSolidWorks\\TemplateModel\\replaceDrawingRef\\AA(BB).SLDPRT\"<\/span><\/span><span>;<\/span>\n\n            <span><span>var<\/span><\/span> newPartName <span>=<\/span> <span><span>$@\"<\/span><span><span>{<\/span><span>start<\/span><span>}<\/span><\/span><span>CSharpAndSolidWorks\\CSharpAndSolidWorks\\TemplateModel\\replaceDrawingRef\\AA(BB) - \u526f\u672c.SLDPRT\"<\/span><\/span><span>;<\/span>\n\n            <span><span>var<\/span><\/span> swApp <span>=<\/span> PStandAlone<span>.<\/span><span>GetSolidWorks<\/span><span>(<\/span><span>)<\/span><span>;<\/span>\n\n            <span><span>var<\/span><\/span> swModel <span>=<\/span> <span>(<\/span>ModelDoc2<span>)<\/span>swApp<span>.<\/span>ActiveDoc<span>;<\/span>\n\n            <span><span>var<\/span><\/span> docModel <span>=<\/span> swModel <span>as<\/span> <span>DrawingDoc<\/span><span>;<\/span>\n\n            <span><span>var<\/span><\/span> views <span>=<\/span> <span>(<\/span><span>object<\/span><span>[<\/span><span>]<\/span><span>)<\/span>docModel<span>.<\/span><span>GetViews<\/span><span>(<\/span><span>)<\/span><span>;<\/span>\n\n            <span>List<span>&lt;<\/span>View<span>&gt;<\/span><\/span> views1 <span>=<\/span> <span>new<\/span> <span>List<span>&lt;<\/span>View<span>&gt;<\/span><\/span><span>(<\/span><span>)<\/span><span>;<\/span>\n            <span>List<span>&lt;<\/span>Component2<span>&gt;<\/span><\/span> comps1 <span>=<\/span> <span>new<\/span> <span>List<span>&lt;<\/span>Component2<span>&gt;<\/span><\/span><span>(<\/span><span>)<\/span><span>;<\/span>\n\n\n            <span>for<\/span> <span>(<\/span><span><span>int<\/span><\/span> i <span>=<\/span> <span>0<\/span><span>;<\/span> i <span>&lt;<\/span> views<span>.<\/span>Length<span>;<\/span> i<span>++<\/span><span>)<\/span>\n            <span>{<\/span>\n                <span><span>var<\/span><\/span> tempV <span>=<\/span> <span>(<\/span><span>object<\/span><span>[<\/span><span>]<\/span><span>)<\/span>views<span>[<\/span>i<span>]<\/span><span>;<\/span>\n\n                <span>if<\/span> <span>(<\/span>tempV<span>.<\/span>Length<span>&gt;<\/span><span>1<\/span><span>)<\/span>\n                <span>{<\/span>\n                    <span>for<\/span> <span>(<\/span><span><span>int<\/span><\/span> j <span>=<\/span><span>1<\/span><span>;<\/span> j <span>&lt;<\/span> tempV<span>.<\/span>Length<span>;<\/span> j<span>++<\/span><span>)<\/span>\n                    <span>{<\/span>\n                        <span><span>var<\/span><\/span> tempView <span>=<\/span> <span>(<\/span>View<span>)<\/span>tempV<span>[<\/span>j<span>]<\/span><span>;<\/span>\n                        <span>if<\/span> <span>(<\/span>tempView<span>.<\/span>RootDrawingComponent<span>.<\/span>Component<span>!=<\/span><span>null<\/span><span>)<\/span>\n                        <span>{<\/span>\n                            <span>if<\/span> <span>(<\/span>tempView<span>.<\/span>RootDrawingComponent<span>.<\/span>Component<span>.<\/span><span>IGetModelDoc<\/span><span>(<\/span><span>)<\/span><span>.<\/span><span>GetPathName<\/span><span>(<\/span><span>)<\/span><span>.<\/span><span>ToUpper<\/span><span>(<\/span><span>)<\/span> <span>==<\/span> oldPartName<span>.<\/span><span>ToUpper<\/span><span>(<\/span><span>)<\/span><span>)<\/span>\n                            <span>{<\/span>\n                                views1<span>.<\/span><span>Add<\/span><span>(<\/span>tempView<span>)<\/span><span>;<\/span>\n                                comps1<span>.<\/span><span>Add<\/span><span>(<\/span>tempView<span>.<\/span>RootDrawingComponent<span>.<\/span>Component<span>)<\/span><span>;<\/span>\n                            <span>}<\/span>\n\n                        <span>}<\/span>\n                        <span>else<\/span>\n                        <span>{<\/span>\n                            <span><span>var<\/span><\/span> visComps <span>=<\/span> <span>(<\/span><span>object<\/span><span>[<\/span><span>]<\/span><span>)<\/span>tempView<span>.<\/span><span>GetVisibleComponents<\/span><span>(<\/span><span>)<\/span><span>;<\/span>\n\n                            <span>if<\/span> <span>(<\/span>tempView<span>.<\/span><span>GetVisibleComponentCount<\/span><span>(<\/span><span>)<\/span><span>==<\/span><span>1<\/span> <span>&amp;&amp;<\/span> <span>(<\/span><span>(<\/span>visComps<span>[<\/span><span>0<\/span><span>]<\/span> <span>as<\/span> <span>Component2<\/span><span>)<\/span><span>.<\/span><span>IGetModelDoc<\/span><span>(<\/span><span>)<\/span><span>.<\/span><span>GetPathName<\/span><span>(<\/span><span>)<\/span><span>.<\/span><span>ToUpper<\/span><span>(<\/span><span>)<\/span> <span>==<\/span> oldPartName<span>.<\/span><span>ToUpper<\/span><span>(<\/span><span>)<\/span><span>)<\/span><span>)<\/span>\n                            <span>{<\/span>\n                                views1<span>.<\/span><span>Add<\/span><span>(<\/span>tempView<span>)<\/span><span>;<\/span>\n                                comps1<span>.<\/span><span>Add<\/span><span>(<\/span>visComps<span>[<\/span><span>0<\/span><span>]<\/span> <span>as<\/span> <span>Component2<\/span><span>)<\/span><span>;<\/span>\n                            <span>}<\/span>\n\n                        <span>}<\/span>\n\n                    <span>}<\/span>\n\n                <span>}<\/span>\n\n\n            <span>}<\/span>\n\n    \n\n            <span>\/\/DispatchWrapper[] viewsIn = new DispatchWrapper[views1.Count];<\/span>\n            <span>\/\/DispatchWrapper[] instancesIn = new DispatchWrapper[views1.Count];<\/span>\n\n\n\n\n            <span><span>var<\/span><\/span> res<span>=<\/span> docModel<span>.<\/span><span>ReplaceViewModel<\/span><span>(<\/span>newPartName<span>,<\/span> views1<span>.<\/span><span>ToArray<\/span><span>(<\/span><span>)<\/span><span>,<\/span> comps1<span>.<\/span><span>ToArray<\/span><span>(<\/span><span>)<\/span><span>)<\/span><span>;<\/span>\n\n        <span>}<\/span>\n<\/code><\/pre>\n<p>\u4ee3\u7801\u5c31\u8fd9\u4e9b\u4e86\uff0c\u4e5f\u5c31\u4e0d\u7ec6\u8bb2\u4e86\u3002<br \/> \u4e3b\u8981\u5c31\u662f\u904d\u5386\u6240\u6709\u89c6\u56fe\uff0c\u7136\u540e\u4f20\u5bf9\u5e94\u7684\u53c2\u8003\u7ec4\u4ef6\uff0c\u8fd4\u56de\u66ff\u6362\u7ed3\u679c \u3002<\/p>\n<p>          posted @<br \/>\n<span>2022-10-24 17:15<\/span>&nbsp;<br \/>\n<a href=\"https:\/\/www.cnblogs.com\/solidworksapi\/\" target=\"_blank\" rel=\"nofollow noopener\">painezeng<\/a>&nbsp; \u9605\u8bfb(<br \/>\n<span>0<\/span>)&nbsp; \u8bc4\u8bba(<br \/>\n<span>0<\/span>)&nbsp;<br \/>\n<a href=\"https:\/\/i.cnblogs.com\/EditPosts.aspx?postid=17369376\" rel=\"nofollow noopener\" target=\"_blank\">\u7f16\u8f91<\/a>&nbsp;<br \/>\n<a href=\"\" target=\"_blank\" rel=\"nofollow noopener\">\u6536\u85cf<\/a>&nbsp;<br \/>\n<a href=\"\" target=\"_blank\" rel=\"nofollow noopener\">\u4e3e\u62a5<\/a> &nbsp;<br \/>\n<a href=\"\" target=\"_blank\" rel=\"nofollow noopener\">\u6765\u6e90<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>C# SolidWorks \u4e8c\u6b21\u5f00\u53d1 API-\u66ff\u6362\u5de5\u7a0b\u56fe\u89c6\u56fe\u5f15\u7528 1024-\u7a0b\u5e8f\u5458\u7684\u8282\u65e5\u3002 \u4f46\u4e3a\u4ec0\u4e48\u4e0d\u653e\u5047\u5462\uff1f [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":507,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[4,5],"tags":[7,6,8],"series":[],"class_list":["post-506","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-solidworks-","category-solidworks","tag-api","tag-solidworks","tag-8"],"views":185,"_links":{"self":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/posts\/506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=506"}],"version-history":[{"count":0,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/posts\/506\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=\/wp\/v2\/media\/507"}],"wp:attachment":[{"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=506"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/blog.ke-zhi.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}