国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 嵊州市| 山西省| 黎川县| 竹山县| 定襄县| 亳州市| 将乐县| 巴林右旗| 灵寿县| 苗栗县| 衢州市| 松阳县| 大冶市| 化州市| 平江县| 岳普湖县| 靖州| 紫金县| 都安| 霍林郭勒市| 庆阳市| 古田县| 洛南县| 南木林县| 赣州市| 镇赉县| 从江县| 宁蒗| 曲松县| 富蕴县| 蒲城县| 库尔勒市| 霸州市| 杭锦旗| 运城市| 鄂尔多斯市| 思茅市| 张家港市| 乐亭县| 临漳县| 达拉特旗|