国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > .NET > 正文

.NET工程的自動(dòng)化編譯

2024-07-10 13:11:25
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

星期六去了一趟海龍,內(nèi)存終于升g了,下午回來(lái)看了一會(huì)兒.net的msdn幫助,發(fā)現(xiàn)

dte,覺(jué)得對(duì)大團(tuán)隊(duì)自動(dòng)化編譯很有利用價(jià)值了,就想寫(xiě)點(diǎn)東西出來(lái)!

通過(guò)這個(gè)接口很容易實(shí)現(xiàn)vc7的工程編譯自動(dòng)化,什么也不說(shuō)了, 一切盡在代碼中!

msdn中描述dte結(jié)構(gòu)的示意圖如下:

vc7.1的代碼如下:

#pragma warning( disable : 4278 )

//the following #import imports dte based on its libid

#import "libid:80cc9f66-e7d8-4ddd-85b6-d9e6cd0e93e2" version("7.0") lcid("0") raw_interfaces_only named_guids

#pragma warning( default : 4278 )

using namespace envdte; // optional

//……

void ct3dlg::onbnclickedok()

{

      coinitialize(null);

      {

           _variant_t varrelease=l"release";

        _bstr_t    bstrslnpath=l"c://test//w3//w3.sln";

 

           try

           {

                 ccomptr<envdte::_dte> pzfive5_dte;

                 _solution  *pzfive5_s=null;

                 solutionbuild *pzfive5_sb=null;

            solutionconfigurations *pzfive5_scs=null;

                 solutionconfiguration *pzfive5_sc=null;

                 pzfive5_dte.cocreateinstance(l"visualstudio.dte.7.1", 0);

                 pzfive5_dte->get_solution(&pzfive5_s);

                 if(pzfive5_s==null)

                 {

                      pzfive5_dte->quit();

                      goto zfive5comret;

                 }

                 pzive5_s->open(bstrslnpath);

                 variant_bool var;

                 pzfive5_s->get_isopen(&var);

                 if (var==variant_true)

                 {

                      pzfive5_s->get_solutionbuild(&pzfive5_sb);

                      if(pzfive5_sb==null)

                      {

                            pzfive5_s->release();

                            pzfive5_s=null;

                          pzfive5_dte->quit();

                            goto zfive5comret;

                      }

                      pzfive5_sb->get_solutionconfigurations(&pzfive5_scs);

                      if(pzfive5_scs==null)

                      {

                            pzfive5_sb->release();

                            pzfive5_sb=null;

                            pzfive5_s->release();

                            pzfive5_s=null;

                            pzfive5_dte->quit();

                            goto zfive5comret;                          

                      }

                      pzfive5_scs->item(varrelease,&pzfive5_sc);

                      if(pzfive5_sc!=null)

                      {

                         pzfive5_sc->activate();

                         pzfive5_sc->release();

                         pzfive5_sc=null;

                      }

                      pzfive5_scs->release();

                      pzfive5_scs=null;

                      pzfive5_sb->build(variant_true);

                      pzfive5_sb->release();

                      pzfive5_sb=null;

                      pzfive5_s->close(0);

                 }

                 else

                 {

                      afxmessagebox("打開(kāi)工程錯(cuò)誤!");

                 }

                 pzfive5_s->release();

                 pzfive5_s=null;

                 pzfive5_dte->quit();

           }

           catch(...)

           {

                      afxmessagebox("接口調(diào)用錯(cuò)誤!");

           }

      }

zfive5comret:

      ::couninitialize();

      return;

}

寫(xiě)到這里不能不佩服ms的深謀遠(yuǎn)慮!!!

除非感到安全,否則人們就不能去迎接變化。

----《最后期限》

的確是一句名言!!!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 林甸县| 灵石县| 资溪县| 五寨县| 滦平县| 新田县| 特克斯县| 措美县| 嵊泗县| 奈曼旗| 陆河县| 英超| 内黄县| 萨迦县| 邵东县| 兴山县| 天台县| 临猗县| 四会市| 南丰县| 都江堰市| 潍坊市| 读书| 色达县| 敖汉旗| 阳原县| 阜阳市| 恩平市| 北宁市| 荣昌县| 阜城县| 朝阳区| 成都市| 广饶县| 浦城县| 霍林郭勒市| 杭锦后旗| 拜城县| 上杭县| 昌邑市| 永丰县|