• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種Visual Studio擴展包的隔離方法技術

    技術編號:13348418 閱讀:61 留言:0更新日期:2016-07-15 01:57
    本發明專利技術公開了一種Visual?Studio擴展包的隔離方法,其具體實現過程為:定義沙箱環境;安裝VSPackages擴展程序;啟動副本實例。本發明專利技術的一種Visual?Studio擴展包的隔離方法與現有技術相比,適用于使用VSPackages方式擴展Visual?Studio集成開發環境時,在同一版本的Visual?Studio集成開發環境下,VSPackages及VSPackages的多個版本之間隔離且并行運行,且VSPackages擴展不影響Visual?Studio集成開發環境的正常環境,實用性強,易于推廣。

    【技術實現步驟摘要】


    本專利技術涉及VisualStudio開發
    ,具體地說是一種VisualStudio擴展包的隔離方法。

    技術介紹

    VisualStudio集成開發環境是微軟提供的一個豐富的集成開發環境,可以創建面向Windows、Android和iOS的應用程序及Web應用程序和云服務,是C#、ASP.NET等應用開發的首選集成開發環境。
    VisualStudio集成開發環境提供了標準的用戶操作組件,比如編譯器,編輯器,調試器等。如果想把自定義的組件集成到VisualStudio集成開發環境中,即對VisualStudio集成開發環境做擴展,可以使用VisualStudioSDK創建VSPackage來實現這種擴展(VSPackages中文名為擴展包),比如一個命令,一個菜單,一個新的項目系統,一個新的編程語言,一個新的編輯器等。VSPackages是組成和擴展VisualStudio集成開發環境的軟件模塊。VSPackages是VisualStudio集成開發環境的重要結構單位,VisualStudio集成開發環境絕大部分功能也是作為一個VSPackages的集合來編寫的。
    VSPackages的擴展及安裝,在同一版本的VisualStudio集成開發環境下只允許安裝一個版本,且直接安裝到了VisualStudio集成開發環境的正常環境下,VSPackages的功能很可能會破壞VisualStudio集成開發環境的正常環境,對VisualStudio集成開發環境有安全隱患。
    在實際的VSPackages擴展開發中,我們希望同一個VSPackages能在同一VisualStudio集成開發環境下能多個版本并行運行,而相互不影響。比如我們為后綴名.do的文件擴展了編輯器,但.do的文件內容前后兩個版本變化挺大,而我們一臺機器上需要對這兩個版本的.do文件進行維護,怎么解決一臺機器能在同一VisualStudio集成開發環境下編輯這兩個版本的文件呢。
    一種做法是:啟動VisualStudio,加載VSPackage,這時只存在最新版本,且最新版本兼容之前所有版本內容。針對這兩個版本的變化,編輯器擴展中做兼容處理來同時支持這兩個版本的編輯,但是這種兼容內容處理對于變化多的場景就太繁瑣了;
    一種做法是:編輯某個版本的文件,就把編輯器擴展其他版本卸載掉,安裝對應版本的編輯器擴展,這種操作太繁瑣,且如果想同時對這兩個版本的文件做編輯不太現實。
    基于此,現提供一種VisualStudio擴展包的隔離方法。

    技術實現思路

    本專利技術的技術任務是針對以上不足之處,提供一種VisualStudio擴展包的隔離方法。
    一種VisualStudio擴展包的隔離方法,包括以下步驟:
    定義沙箱環境;
    安裝VSPackages擴展程序;
    啟動副本實例。
    所述的沙箱環境,包括副本實例、副本實例運行VSPackages的路徑、副本實例啟動的快捷方式、VSPackages擴展程序,該沙箱環境有自己唯一的編號及名稱,稱為沙箱編號及沙箱名。
    上述沙箱環境中各部分的具體內容為:
    副本實例,是基于VisualStudio的一個獨立的運行實例,是和VisualStudio集成開發環境的正常環境運行實例完全隔離的,但包含VisualStudio集成開發環境的所有功能;
    副本實例運行VSPackages的路徑,是副本實例定義時指定的副本實例運行VSPackages的一個目錄;
    副本實例啟動的快捷方式,是為副本實例的啟動創建的一個快捷方式;
    VSPackages擴展程序,是VisualStudio擴展包的內容,包括dll及擴展包運行所需要的圖片、配置文件。
    所述沙箱環境的定義過程為:
    為要創建的沙箱定義沙箱編號及沙箱名;
    使用VisualStudio命令與沙箱編號,創建副本實例;
    配置副本實例運行VSPackages的路徑;
    創建沙箱啟動的快捷方式。
    VSPackages擴展程序的安裝過程為:
    復制VSPackages程序到沙箱運行VSPackages的路徑。
    寫VSPackages程序的注冊項到注冊表。
    復制VSPackages擴展程序,使用自開發的安裝程序安裝VSPackages安裝包到沙箱環境,該自開發的安裝程序是隔離方法提供的安裝程序。
    所述VSPackages安裝包,包括Packages目錄、Registy目錄,其中:
    Packages目錄,包括開發的VisualStudio擴展包的源代碼編譯后的dll、圖片、配置文件;
    Registry目錄,包括開發的VisualStudio擴展包編譯后生成的.pkgdef文件。
    上述安裝VSPackages擴展程序的詳細過程為:
    復制Packages目錄下內容到副本實例運行VSPackages的路徑;
    寫Registry目錄中的.pkgdef文件內容到注冊表。
    本專利技術的一種VisualStudio擴展包的隔離方法和現有技術相比,具有以下有益效果:
    本專利技術適用于使用VSPackages方式擴展VisualStudio集成開發環境時,在同一版本的VisualStudio集成開發環境下,VSPackages及VSPackages的多個版本之間隔離且并行運行,且VSPackages擴展不影響VisualStudio集成開發環境的正常環境,實用性強,易于推廣。
    具體實施方式
    下面結合具體實施例對本專利技術作進一步說明。
    本專利技術的一種VisualStudio擴展包的隔離方法,包括以下步驟:
    一、定義沙箱環境;
    二、安裝VSPackages擴展程序;
    三、啟動副本實例。
    所述的沙箱環境,包括副本實例、副本實例運行VSPackages的路徑、副本實例啟動的快捷方式、VSPackages擴展程序,該沙箱環境有自己唯一的編號及名稱,稱為沙箱編號及沙箱名。
    上述沙箱環境中各部分的具體內容為:
    副本實例,是基于VisualStudio的一個獨立的運行實例,是和VisualStudio集成開發環境的正常環境運行實例完全隔離的,但包含VisualStudio集成開發環境的所有功能;
    副本實例運行VSPackages的路徑,是副本實例定義時指定的副本實例運行VSPackages的一個目錄;
    副本實例啟動的快捷方式,是為副本實例的啟動創建的一個快捷方式;
    VSPackages擴展程序,是VisualStudio擴展包的內容,包括dll及擴展包運行所需要的圖片、配置文件。
    所述沙箱環境的定義過程為:
    為要創建的沙箱定義沙箱編號及沙箱名;
    使用VisualStudio命令+/rootsuffix+沙箱編號,創建副本實例;
    配置副本實例運行VSPackages的路徑;
    創建沙箱啟動的快捷方式。
    VSPackages擴展程序的安裝過程為:
    復制VSPackages程序到沙箱運行VSPackages的路徑。
    寫VSPackages程序的注冊項到注冊表。
    復制VSPackages擴展程序,使用自開發的安裝程序安裝VSPackages安裝包到沙箱環境,該自開發的安裝程序是隔離方法提供的安裝程序。
    所述VSPackages安裝包,包本文檔來自技高網
    ...

    【技術保護點】
    一種Visual?Studio擴展包的隔離方法,其特征在于,其實現過程為:定義沙箱環境;安裝VSPackages擴展程序;啟動副本實例。

    【技術特征摘要】
    1.一種VisualStudio擴展包的隔離方法,其特征在于,其實現過程為:
    定義沙箱環境;
    安裝VSPackages擴展程序;
    啟動副本實例。
    2.根據權利要求1所述的一種VisualStudio擴展包的隔離方法,其特征在于,所述的沙箱環境,包括副本實例、副本實例運行VSPackages的路徑、副本實例啟動的快捷方式、VSPackages擴展程序,該沙箱環境有自己唯一的編號及名稱,稱為沙箱編號及沙箱名。
    3.根據權利要求2所述的一種VisualStudio擴展包的隔離方法,其特征在于,上述沙箱環境中各部分的具體內容為:
    副本實例,是基于VisualStudio的一個獨立的運行實例,是和VisualStudio集成開發環境的正常環境運行實例完全隔離的,但包含VisualStudio集成開發環境的所有功能;
    副本實例運行VSPackages的路徑,是副本實例定義時指定的副本實例運行VSPackages的一個目錄;
    副本實例啟動的快捷方式,是為副本實例的啟動創建的一個快捷方式;
    VSPackages擴展程序,是VisualStudio擴展包的內容,包括dll及擴展包運行所需要的圖片、配置文件。
    4.根據權利要求1-3任一所述的一種VisualStudio擴展包的隔離方法,其特征在于,所述沙箱環境的定義過程為:
    為要創建的沙箱定...

    【專利技術屬性】
    技術研發人員:任麗霞
    申請(專利權)人:浪潮通用軟件有限公司
    類型:發明
    國別省市:山東;37

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 天天看高清无码一区二区三区| 毛片无码一区二区三区a片视频| 国产仑乱无码内谢| 亚洲国产一二三精品无码| 91精品日韩人妻无码久久不卡| 97无码免费人妻超级碰碰夜夜| 国精无码欧精品亚洲一区| 亚洲日韩乱码中文无码蜜桃| 亚洲不卡无码av中文字幕| 67194成l人在线观看线路无码| 中出人妻中文字幕无码| 18禁无遮挡无码网站免费| 无码A级毛片免费视频内谢| 特级做A爰片毛片免费看无码| 亚洲午夜无码毛片av久久京东热| 亚洲精品无码久久久久| 天堂无码在线观看| 久久精品无码一区二区三区不卡 | 亚洲aⅴ天堂av天堂无码麻豆| 暴力强奷在线播放无码| 久青草无码视频在线观看| 精品久久久久久中文字幕无码 | 无码尹人久久相蕉无码| 精品无码久久久久国产| 日韩人妻无码精品久久免费一| av无码一区二区三区| 国产精品毛片无码| 亚洲AⅤ无码一区二区三区在线 | 18禁无遮挡无码网站免费| 亚洲天堂2017无码中文| 无码精品尤物一区二区三区| 亚洲AV无码国产精品色| 日韩av无码中文字幕| 免费A级毛片av无码| 精品深夜AV无码一区二区| 无码福利一区二区三区| 无码夜色一区二区三区| 国产成人无码精品久久久露脸| 无码色AV一二区在线播放| 中文字幕av无码一区二区三区电影| 国产成年无码久久久免费|