|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
NX12.0 二次开发使用VS2012 报错解决方案
2 I$ O I9 ?; N1 g: F( o5 K严格的讲NX12.0需要使用VS2015进行开发,这里说下如果你是低版本的解决方案,但是不推荐!4 Z- e& a2 M% ?! q0 x5 y+ T
(1)安装完后,点击Open Wizard 告诉你创建项目错误4 D& V5 {' Q9 y) K) a+ N
3 k' Z2 w. f$ G3 P这种问题就是编译器版本不符合官方的匹配导致的,更改方法很简单
& Q8 n8 i" ?! C8 n% \( H5 D% A打开 C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcprojects下的NX12_NXOpenCPP.vsz 将 j/ N0 E' u2 l7 ?- I$ H
Wizard=VsWizard.VsWizardEngine.14.0 中的14 改成11 也就是对应的VS2012
% M5 }) U, {2 X2 B
- `! t8 k8 k0 G W0 g+ M这样创建的对话框就可以出来了!- o1 r1 z5 T: G
(2)你可能还会遇到路径错误,path not found, 建议对这个文件进行修改,尤其是你有多个版本存在的话,一劳永逸
: U' g. S% b- y HC:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\VCWizards\NX11_NXOpenCPP\scripts\1033 下的default.js 文件, X9 R# u2 U& B5 b
修改里面的环境变量路径,注意路径是双反斜线 \\,参考如下!+ z2 k; K# P$ S! q$ g
! `6 Y, d& N& N, o
//@<DEL>@ TEXT ENCLOSED within delete markers will be REMOVED
9 f1 a& ?+ @0 C// 09-Jun-2012 Frank Berger Initial Release for VS2010 based on "NX8 Open Wizard"3 L3 p- _/ q# B& u1 X, S( m& v
// 31-Okt-2013 Frank Berger modified for VS20129 p9 D( C7 F# m5 ]4 _
// 13-Feb-2015 Sudhir Pawar ARCH:11320: Added libufun_die.lib,libufun_vdac.lib & libufun_weld.lib8 {* i$ h! O5 T8 s# |! r8 t
// 21-Dec-2015 Purushottam Thakre Fixed PR#7567548: Call DeletePlatform function to delete 'Win32' platform.
1 y9 o: g& u- [ D. o// 08-Jan-2016 Prabhakar Mandlik Fixed PR#7588129: Added /d1scalableinclude- swiTCh.$ [/ b0 a$ l4 m; y$ |& s
// 10-Feb-2016 Purushottam Thakre Fixed PR#7630769: Reverted changes done to fix PR#7567548 which is causing regression
0 b) r' Y" Z4 \4 }7 r1 {//TEXT ENCLOSED within delete markers will be REMOVED @<DEL>@
d! d4 J* Q3 ~8 z0 _+ n$ B1 ^" w
function OnFinish(selProj, selObj)
# w5 x; _1 W8 T/ J* I" ~7 R{
7 C' q* ~; i( y7 |1 }8 r- ] try$ H, D0 G5 d! m& z) n; _
{! y* m" b9 r* {, M6 B; r3 r
var bodyTemplateFile = wizard.FindSymbol("TEMPLATES_PATH") + "\\" + "body_template.txt";
3 ?: p# x5 f3 q# F! d var bodyTemplateText = wizard.RenderTemplateToString(bodyTemplateFile);# Y; b6 S! ^. a, i1 k% G
wizard.AddSymbol("BODY_TEMPLATE", bodyTemplateText);. [2 G8 V3 ]# |
. q/ C. G2 j" b0 q
var entryPointsTemplateFile = wizard.FindSymbol("TEMPLATES_PATH") + "\\" + "entry_points_template.txt";/ u4 L9 e& i v' U7 v O4 ?
var entryPointsTemplateText = wizard.RenderTemplateToString(entryPointsTemplateFile);
, S# ^' o/ R# b6 E0 w# M wizard.AddSymbol("ENTRY_POINTS_TEMPLATE", entryPointsTemplateText);$ h( Z# ]& b) [4 d
2 D' U* |: a' k2 l) q/ f var unloadOption = "UNLOAD_IMMEDIATELY";
- N4 S: q$ X9 o4 ]) `3 d+ t if ( wizard.FindSymbol( "UF_UNLOAD_UG_TERMINATE" ) )* o1 _1 F; B2 Z; C
{
- Y, f( N! Z- q% j' }9 v unloadOption = "UF_UNLOAD_UG_TERMINATE";$ S, U5 W2 n$ D4 X- @* ^- p% D
}
3 X# Q, z# x" E/ C else if ( wizard.FindSymbol( "UNLOAD_SEL_DIALOG" ) )2 A Q* d# ^8 K9 R' y5 Q3 X
{
: V: }6 x+ |+ z, l# h unloadOption = "UF_UNLOAD_SEL_DIALOG";
3 ^$ l4 G" q# }7 K" { }
2 q. y1 p- k0 v7 F( A+ {: R+ r6 W wizard.AddSymbol("UF_UNLOAD_OPTION", unloadOption);
; C+ q' \& |0 `6 P( G/ ?9 q2 a9 t! t' ?8 P
0 o L* y( M2 N$ }" c( s
// Assign the project path and project name
2 Z* ~) e, A8 Y( V var strProjectPath = wizard.FindSymbol("PROJECT_PATH"); K f3 }$ l2 k! L
var strProjectName = wizard.FindSymbol("PROJECT_NAME");
. Z" r* p8 o2 Q6 n- t, ~' U; d var strClassName = wizard.FindSymbol("MAIN_CLASS_NAME");+ i( Q3 H% l# _: V" d' W1 [' R! C
if ( strClassName.length < 1 ) ) R) d( g( o i+ A0 V, b! @
{& K! Y2 j% G6 j) b6 |. G3 j
wizard.AddSymbol("MAIN_CLASS_NAME", "NONAME");
) Q( a# U4 W# S4 L }! U3 n" L6 G( U8 s# U% p
* L7 n3 M( S4 P // Create the Visual C++ project and call it "NXOpenProj"
- j" M4 P, B( I B/ c X selProj = CreateProject(strProjectName, strProjectPath);, D* I( [: @1 S! y* P# ]5 d* N
// selProj.Object.Keyword = "NXOpenProj": N2 k6 t0 K( T, @
L1 a' } x1 Q8 C" y
// Add common and specific configurations to the project1 r# p/ d1 q N* l
AddCommonConfig(selProj, strProjectName);
: b$ q- |9 a: J( j O, h1 y( C AddSpecificConfig(selProj, strProjectName);- F5 \6 Z/ ?$ u1 y# R
// selProj.Object.keyword = "MFCDLLProj";6 { s+ w# I, f+ ?" I
: y) _. P$ L+ b* X4 r; x( Y' I+ C3 x //Set the project filters % T, n1 K- [" q
SetupFilters(selProj);0 O# H, b4 `4 r& C
- i$ W& a, x. y% g
// Add files to the project from the project's Templates.inf file( g; U% D8 \$ _' I+ S6 x. q
AddFilesToProjectWithInfFile(selProj, strProjectName);
( k! D% O- T0 E 2 {9 E e. T# k$ X# E
selProj.Object.Save();; {5 r+ b# T5 R$ l5 n
}, P$ d! b# ?% Q2 s
catch(e)
& K! v* s2 J4 z4 b C' t {+ o r9 d# N3 s, @
if (e.description.length != 0)5 l8 }+ e; s" G7 J( l J9 b/ D
SetErrorInfo(e);
, s8 x9 P0 c) Z return e.number; Z& r0 t# y8 S3 H
}
9 P7 j( |4 v8 n% E& `& Y}# ?& g3 p$ t2 ], a1 X1 f: h q
% w2 q( R) M. |
function SetFileProperties(projfile, strName)
6 T1 q5 W0 `- L3 |- K8 c" W A4 w{/ t4 e4 s' [. q2 p; D
return false; F2 O1 k) @# r" g
}- g% R, z P9 Z& T# c6 q
* @7 E0 v* o) m3 w: j2 Kfunction DoOpenFile(strTarget)
3 ^2 @! B& b; A/ N N: e/ A' E{
' \8 O( }# J' H& x: { return false;
# v# V& x7 M* |; u+ ~6 q}
; a$ Z$ Q! x, z, V) j r
* M) A( E5 G+ w7 j2 |# v. ^function GetTargetName(strName, strProjectName, strResPath, strHelpPath)
, |: K2 M% Z( E+ y6 C6 ?{
2 ^7 n% P1 b/ N5 C& p9 j try
5 j' ?" C" n7 n! q X7 l8 R* R {. A# m, \' f$ U$ J: n, k
var strTarget = strName;
5 f9 [" S+ v- S8 w' C if (strName.substr(0, 4) == "root")1 q, ]% @: V/ T3 _# v% l
{
; ~; s3 Z- Q# S; s2 H var strlen = strName.length;9 k" g0 Q: q& R# g; ]2 J: Y
if (strName == "root.ico" || strName == "root.rc2")4 Z# W. W3 l" B, D: |# |, P
{
7 L6 {2 n# C5 l$ E" J: V+ a# i var strSafeProjectName = wizard.FindSymbol("SAFE_PROJECT_NAME");4 E' A1 @$ V" P+ h& ^$ Y, l
strSafeTarget = strSafeProjectName + strName.substr(4, strlen - 4);
* q& c% b$ F: I- m- m2 }% m. V strTarget = strResPath + "\\" + strSafeTarget;' ?: B) J4 i( _" f4 c$ P
}' e1 ^8 H. e; [+ h3 F& E* m2 y- m
else if (strName == "root.txt" )' }3 k% R x3 q Q* p( @3 }
{. Z2 Z B1 A$ v% Y8 H* u
strTarget = strProjectName + ".cpp";
6 X# y' s. z! X# ^- c. ?( T& i }
/ b; v' {4 g6 F. x j. K2 K else/ ~& m6 c3 k% L! M; W
{8 Q/ d8 e3 o! T+ U- E% E' {) Q
strTarget = strProjectName + strName.substr(4, strlen - 4);
. C* g* w* ^, I1 P6 g; L: p; w }6 |7 Z* t& s& ^" W: t. y: M. m' H: A
return strTarget;
' w% v' q) r) ]& U; w4 m# X }
) |0 x8 y. @) p2 z- y1 Y
! U* `4 n4 V% G* g8 ~# n switch (strName)
8 O1 u! x' r+ ^ o8 b0 w {9 M: D5 D D/ ~& }
case "readme.txt":& O7 Z4 W% H3 E4 t
strTarget = "ReadMe.txt";4 U1 _8 b; V; s( s- F) J4 _1 m
break;
" d; {; M: M7 Z0 n3 Z- o case "all.rc":3 ]$ E* B7 h+ G0 @5 ~
case "dlgall.rc":
! H. s' |: C9 e* T5 A% O1 m strTarget = strProjectName + ".rc";+ D5 n5 `% r! T) M/ i& a) k" U
break;3 t6 O/ M6 y$ H, j
case "dlgres.h":
7 D. s3 k) O0 M# S: I7 W! {6 c case "resource.h":
3 c# _ D2 V( Q1 { strTarget = "Resource.h";
. g! B; Q4 w' u8 {) T W7 s break;
# C( ~8 {6 u- V1 L default:" |8 @7 M1 {2 P: o# U4 H+ r
break;
8 Z8 h3 H$ w0 V5 l J0 C: L }
1 n3 j( z8 _) U* X, v return strTarget;
- |' D3 I, U! Z; }, Z8 F x }
( E* w8 f, j* M- w- H" l catch(e)* R( g8 o3 @( c$ w/ h* L, G1 N4 J
{2 F6 O' ~# x/ B+ M) x
throw e;) m) A7 A' `$ ?
}8 [! N' O _* O7 S3 U! x8 n
}2 x9 Z- @! H0 y* J) Z$ [
2 @ k1 K7 p) }) L& b" {2 _
function AddSpecificConfig(proj, strProjectName)
. \- } O3 v! g }/ k6 |, a* {( m8 i8 q; A{% B! ?( x& i& a+ e
try; f9 ^& x0 x! Y/ N1 c
{2 `) {+ l% W4 }- M
var isDllApp = wizard.FindSymbol("DLL_APPLICATION");
% Y. z# ]& h/ [5 |; [7 b2 W$ f var isCxx = true;
2 o+ S) p8 J- f# g6 k0 w+ L/ M; w% V! v5 l, L
var appType;, b, f2 z+ c. L3 A' y6 }
var appExtension;4 i. G: ^0 c7 H) F. ~: W
& O5 l8 f0 Q1 @5 r3 \% y proj.ConfigurationManager.AddPlatform("x64", "Win32", true);
X, i$ J' S; ], T& D6 D2 F' K7 V8 r
if ( isDllApp )
$ ?6 e; M- P) g' W6 A7 d7 x {
1 m( j4 x, A0 @ t. l u7 E" V, R appType = typeDynamicLibrary;6 f/ P, }/ ?& X' C3 @
appExtension = ".dll";5 s2 q2 d& Q: T- K9 y" t
}
C! y: [0 b* V/ `* \ else0 A% J& v; f2 |; a1 C* B
{
# U+ G! X$ n4 ?" x appType = typeApplication;7 B+ H, v& x5 t% c; [" k
appExtension = ".exe";
- A Y! [3 `# K7 I0 B- Z }' l/ w. y# L% W8 m& \, I9 S
% ?; g# H/ {0 [2 S C* p var linkLibs = "libufun.lib";
+ a' Q m0 A! T. K linkLibs += " libufun_cae.lib";
' @/ v( m, g/ K; B7 h2 s linkLibs += " libufun_cam.lib";
% c9 x: L$ d4 {) C' C linkLibs += " libufun_die.lib";1 i) p: F p8 Y% M5 g% u5 y' w3 m
linkLibs += " libufun_vdac.lib";
* ~, N G6 w k( q( z4 J linkLibs += " libufun_weld.lib";; u; v6 ^; L$ K; j( i( J5 N
! m9 ~# n* n$ A
if ( isCxx)$ ^) l$ t, i- P
{
# ]1 q! Z+ P; C! O( F& Q9 \ var wshell = new ActiveXObject("WScript.Shell")5 i$ @4 j- H5 x4 ?/ W1 L' w" l
var libpath ="D:\\dsplm\\Siemens\\NX12\\ugopen";
9 E1 [! O+ a5 ?- S5 k5 f0 w var Fo =new ActiveXObject("Scripting.FileSystemObject");5 D4 }- ^. Y! I
var FSo = new Enumerator(Fo.GetFolder(libpath).Files);0 V' ]( q: o' d& x
var nxopencppName = "libnxopencpp";
. U, o+ K# H. M- e+ ? for(; !FSo.atEnd(); FSo.moveNext())
3 o0 g/ o( L" d$ Z' o4 y4 ] {
( C. c: A5 f' ? if(FSo.item().name.match("^"+nxopencppName)==nxopencppName) //check if file name start with libnxopencpp
+ X& O( [3 M. a w+ f. e if(FSo.item().name.slice(FSo.item().name.lastIndexOf(".")+1).toLowerCase() == "lib") //check if file has '.lib' as an extension
7 E1 ^$ r5 N. h- j$ ]( b: [% J {
3 C- `( u/ L. @ x) e linkLibs = linkLibs + " " + FSo.item().name;
! V7 I% V$ ?6 K! @ }
$ I, D O r' f }$ i- j$ s6 L* T
}
4 C3 {' `5 g# G2 M6 A7 e2 l
6 R3 o5 W6 m# T if ( isDllApp ), i/ f7 z8 Q- ~! a) j* m3 V
{
" y+ `8 ]# z/ |) \; n* h linkLibs += " libugopenint.lib";
- @# ? u; _; a5 \ C. A( t8 g linkLibs += " libugopenint_cae.lib";
8 i% w/ t( I/ G7 P Z; d# a linkLibs += " libugopenint_cam.lib";" u$ r, i$ b. @2 e1 A2 J% {" M) R( L1 K0 G
& k* w7 I6 v2 _: W- M) V+ U0 w( ?9 T) j if ( isCxx)8 } N! w9 A/ O' i) a( S
linkLibs += " libnxopenuicpp.lib";
7 [& i9 @1 _. J* { }5 ]- [5 Y+ D% i, L; x. \8 m
& t* k/ z6 l% R! v" p
//=================================================================
6 k( [; L p+ b( b: w; @ // Debug Configuration
8 e7 I! J& r( d* K //=================================================================
) e7 Q+ P. M/ b4 \( h//LRJ - add x641 r4 H1 p) D' I0 A: f8 |$ y# B
var config = proj.Object.Configurations("Debug|x64");
) f! p/ o% _" x/ [5 _4 \+ ?2 g config.ConfigurationType = appType;
; r; p' M8 k, r config.CharacterSet = charSetUnicode;
7 K; X0 K+ }! d) ^& {0 j8 P config.useOfMfc = useMfcStdWin;
# c; I$ A; Q1 q0 \3 j
( M% p! c! ~& `, v var CLTool = config.Tools("VCCLCompilerTool");/ n. M( @. k% |( m
var strDefines = GetPlatformDefine(config);
" R' z) k9 r: O1 U4 k strDefines += "_CRT_SECURE_NO_WARNINGS;_SECURE_SCL=0"; P# R, R# T& {1 u* U9 M
if ( isDllApp )
" N% q7 I" \7 Z6 j+ Y. ? {
. a( ]# p1 P6 S8 { strDefines += ";_USRDLL";* Z8 h/ w) E6 z( B. P
}
' z# K- K% H6 F4 q# ^9 k else
( p. H$ f' b; u( \, ] {# ~; c9 \+ p5 a, H
strDefines += ";_CONSOLE";9 ]5 P5 f( t0 f+ h
}
1 v. O$ B# s) I7 N& D- o0 |5 h: L- b
CLTool.PreprocessorDefinitions = strDefines;) r+ O+ l; x8 K+ w
/ } B* J+ u# f1 X( n" i5 w
config.UseOfMFC = useMfcDynamic;9 T; u, j6 B3 v2 Y
CLTool.RuntimeLibrary = rtMultiThreadedDLL;7 a- x( x+ b! B- h& F- H
& g5 a7 j+ X& D- m; x CLTool.TreatWChar_tAsBuiltInType = true;
; ^5 j1 B& m) h CLTool.DebugInformationFormat = debugEnabled;# _: C; d5 D& Q4 W6 ^# P0 M, X9 E
CLTool.AdditionalIncludeDirectories = "D:\\dsplm\\Siemens\\NX12\\ugopen"; D( l, Z0 W) \- N$ k- x, K
% L3 ~) A0 Y1 o& E* r( G
CLTool.RuntimeTypeInfo = 1;0 H; F1 X7 b" T$ |0 [
CLTool.UsePrecompiledHeader = pchNone;
: v/ b! Y( D9 }: k. K7 X1 X' ] CLTool.AdditionalOptions = "/d1scalableinclude-";
& C3 U4 j! i Z7 o
: _- [$ s3 f% u5 J7 @& V0 e//LRJ - change for X64 - add TargetMachine2 P* g4 W$ z) Y# Q0 d' U, U
var LinkTool = config.Tools("VCLinkerTool");
& ]2 z$ c( A; C: N9 ^# Z LinkTool.TargetMachine = machineAMD64;0 Z9 k5 q7 b' S+ W6 c6 b& m8 x3 w
LinkTool.LinkIncremental = linkIncrementalYes;/ ?+ ^4 L7 h# @; I
LinkTool.GenerateDebugInformation = true;
3 z# M0 V8 S9 x" P LinkTool.OutputFile = "$(OutDir)/" + strProjectName + appExtension;/ d) R' H# X7 L, D" u9 ?& J/ D' m
if ( isDllApp )
, E/ |- C8 o4 k, h' w" X. s LinkTool.ImportLibrary = "$(OutDir)/" + strProjectName + ".lib";5 Y0 J; `' _# H a8 f( m/ g4 o
LinkTool.AdditionalLibraryDirectories = "D:\\dsplm\\Siemens\\NX12\\ugopen";
" r9 U; z8 q& W" [6 C" I$ N LinkTool.AdditionalDependencies = linkLibs;, W4 U, B+ l6 C m* X3 P( U4 i$ f O$ l
LinkTool.SubSystem = subSystemConsole;. @# W( P* k7 b
//LRJ - add following line for X64 definition: F% o! D" ~. j1 V9 q( n, I
dte.ExecuteCommand("Build.SolutionPlatforms", "x64");
: k- w5 h; {" W; ~9 @' g9 L7 Z, ?8 I1 R+ h+ w; Y- O
//=================================================================
* a1 v- ~) ~$ O7 K* L // Release Configuration
7 H" V; I+ O! Q5 H- X //=================================================================
1 W* M: i8 ]3 l2 Z5 f//LRJ - add X64 definition to configuration line
* K& `- b" ?' q) x& k) B0 E' z config = proj.Object.Configurations("Release|x64"); Q' ?; A E, R! S
config.ConfigurationType = appType;/ f+ B! L3 l" ]- x
config.CharacterSet = charSetUnicode;" ^ F1 y, y' h8 Q$ S1 u. ] W0 g
config.useOfMfc = useMfcStdWin;
9 }, i# s: K. D, u6 ]! B+ B2 H8 u4 c' t0 @8 R
CLTool = config.Tools("VCCLCompilerTool");( d/ c: q9 p; B. b
strDefines = GetPlatformDefine(config);
9 K) @3 ~$ Q5 s/ {9 N" ]" y strDefines += "_CRT_SECURE_NO_WARNINGS;_SECURE_SCL=0";
( w8 `8 H, z# ~. b if ( isDllApp )
* J' k9 F) C1 O4 x8 c4 R {9 o# }/ {# W# ^' a1 W& t/ [
strDefines += ";_USRDLL";
3 @$ U7 w2 b/ a% ], |$ t }/ x. n$ K F6 \6 S, F+ x7 N* w
else
7 f/ |( i+ O2 _. w! r/ U {
8 W' [* o: F8 h7 s! [ strDefines += ";_CONSOLE";; u" e9 P1 r; Y" ^" l% X" i. G
}& |& [% ]6 \( m/ W) v7 x& I
3 U4 \; h$ c/ G2 g' a; d
CLTool.PreprocessorDefinitions = strDefines;
& I# h& ]( t( Z
. U/ I! E2 S* \' ? B7 v1 @* |$ A( X config.UseOfMFC = useMfcDynamic;
/ }% n6 \7 F2 ~$ Z8 p CLTool.RuntimeLibrary = rtMultiThreadedDLL;
* y" m8 I/ v" [% R9 m' u2 L* C/ ~
CLTool.InlineFunctionExpansion = expandOnlyInline;$ C* _! }) [3 Z* {- C0 _ H- ?. ^! m
CLTool.TreatWChar_tAsBuiltInType = true;6 ?1 L8 j1 W5 I0 H% {
CLTool.DebugInformationFormat = debugEnabled;
' `) }9 }2 F- }, _4 M2 y& ]* u; F4 ]
CLTool.AdditionalIncludeDirectories += ";D:\\dsplm\\Siemens\\NX12\\ugopen";2 t/ P" U. n+ @* N
% u. u& Q/ v8 A! ~( W- q
CLTool.RuntimeTypeInfo = 1;
4 i& Y: ^" k$ n' u* m CLTool.UsePrecompiledHeader = pchNone;
' F. V( Y7 r' S5 [3 K. L //CLTool.AdditionalOptions = "/d1scalableinclude-";
/ \3 K7 t# F, d" A
, |0 t$ U* j, K' X# S- [ LinkTool = config.Tools("VCLinkerTool");
: u! s) Y5 p! d E//LRJ - add following line for X64 definition
/ t' w3 g9 J& E LinkTool.TargetMachine = machineAMD64;
: b* G5 \. J" l* m1 O6 T& ^: h# m- G- ^ LinkTool.OutputFile = "$(OutDir)/" + strProjectName + appExtension;
0 A2 v+ u2 [6 r* b if ( isDllApp )! B+ v3 e8 h6 ]' ~# }( y
LinkTool.ImportLibrary = "$(OutDir)/" + strProjectName + ".lib";
$ l* y" d+ R4 }9 K; E7 b- }" F LinkTool.GenerateDebugInformation = true;' p( O# K' l3 S* Y* U
LinkTool.LinkIncremental = linkIncrementalNo;
* ~- C6 F5 [# u. {1 |4 v LinkTool.AdditionalLibraryDirectories += ";D:\\dsplm\\Siemens\\NX12\\ugopen";$ y: x# ?0 a$ ]8 w' Y% n t
LinkTool.AdditionalDependencies = linkLibs;- O( r+ g$ W& _. i
LinkTool.SubSystem = subSystemConsole;
( g3 K1 S. w$ n1 Q1 r4 K# Z! w//LRJ - add following line for X64 definition
6 ?4 `) p1 Z) F: i& y7 M; b dte.ExecuteCommand("Build.SolutionPlatforms", "x64");
" {$ I# B1 |6 i0 e0 Z% b }
- p9 W; U0 [% F4 [+ P catch(e)
* J h* o) k6 J. A. [7 e {4 z. j* Z' q% {+ t
throw e;) J. `) _( A. {6 j' r
}1 l& g9 @6 L- m+ w3 w, |
}( O" F$ k' Y( D7 @( U
# B2 f0 U& ]; t% c4 ^; Z @0 {% E
$ \! A0 y3 f% E- L
% l! k% ~# [3 ` |
|