<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    InstallShield InstallAnywhere 培訓要點記錄(二)

                10)使用ISMP 11.5的project file
                    ISMP 11.5的project file是uip格式的,IA不能直接打開它。我們可以在ISMP 11.5中導出一種DIM file,然后在
                    IA的organization-->DIM Reference-->add DIM Reference中使用它。ISMP 11 sp1之前的版本IA不再兼容
                11)installer運行時參數
                    你可以在installer運行的時候添加一些參數,比如
                    installer.exe -i console //在console模式下運行
                    //在silent模式下運行,由于silent模式不會有任何界面,所以你可以
                    //設置一些安裝的屬性,格式如下:
                    installer.exe -i silent <propertyname>=<value>
                    //具體實例:
                    installer.exe -i silent USER_INSTALL_DIR=C:\Mydirectory
                    //如果你屬性很多,你可以都寫在一個文件中,然后引用就可以了
                    installer.exe -i silent -f <path to the properties file>
                12)用代碼啟動IA的build
                    稍微復雜一點的java項目在編譯打包的時候都少不了要用到ant。如果我們要在ant中啟動IA來制作安裝程序該怎么做呢
                    IA的安裝目錄下有一個build.exe,用它就可以了。
                    build.exe <path to IA project file>
                13)source path
                    在Edit菜單里面可以設置source path。感覺它跟ISMP的alias是一樣的。無非就是讓你設置IA_HOME,PROJECT_HOME等等。
                    和alias不同的是,source path都是global,沒有project類型的。source path存放在C:\Documents and Settings\Administrator\InstallAnywhere\80\Enterprise\preferences中
                14)merge modules
                    當我們需要有一個project包含其他project的時候,就要用到merge modules。最典型的例子就是office包含word,powerpoint
                    ,excel等。merge modules最少要有兩個project,一個parent project,若干個child project。merge modules主要有以下幾種:
                    i. design time merge module
                     這種merge module直接把child project拷貝到了parent project中,child project中的panel和action都會在parent project
                     的安裝過程中出現,并且你可以在parent project中修改它們。如果原來的child project做了某些變化,parent project中的child project不會有任何變化。
                     這種merge module只生成一個uninstaller,它會卸載掉整個軟件產品。如果要只卸載child project,好像可以通過把child project
                     設成feature來實現,但我目前還沒有實驗過。
                    ii. dynamic time merge module
                      這種merge module不拷貝child project到parent project中,它只鏈接到child project。所以child project的任何變化都會反映到
                      parent project中。但是你不能在parent project中修改child project的panel和action,因為你只是鏈接到child project。
                      這種merge module會生成多個uninstaller,分別用來卸載parent project 和child projects。
                    iii. build time merge module
                       和dynamic time merge module類似,不同的是build time merge module不會出現child project的panel。換句話說,child project是以silent模式安裝的。
                怎么在具體的項目中用merge module呢?首先,你需要把child project build成merge module,會生成一個文件。然后在parent project的
                orgnization-->Modules 導入就可以了
                15)Custom Code
                    IA的advanced designer已經可以滿足大部分用戶的需要了,如果你所要的功能advanced designer還無法實現,你可以自己編寫Custom Code來實現。可以說
                    Custom Code是IA的more advanced designer。
                    Custom Code分成以下幾種:
                    i.custom code actions
                    ii.custom code panels
                    iii.custom code consoles
                    iv.custom code rules
                    在IA的安裝目錄下有一個javadoc目錄,里面有IA提供的api的文檔,跟java的api的文檔的使用方法是一樣的。IA為以上四種Custom Code提供了四個
                    缺省的類來實現,分別是CustomCodeAction,CustomCodePanel,CustomCodeConsoleAction,CustomCodeRule,你可以去繼承它們并添加你需要的
                    功能。
                    代碼寫好了之后不能直接用于IA中,還需要編譯,打包。打包有兩種方法
                    一)打包成類的JAR包
                       先寫好代碼,然后用javac命令編譯(當然你也可以用eclipse,netbean來得到class文件),最后把class file壓成jar包。
                       點擊Add Action-->Execute Custom Code,指定你的jar包的位置,如果用到了第三方的jar包,記得把它們添加到“Dependencies”中
                       ps:點擊Add Action,你會看到有四個tab:General,Panels,Consoles,Plug-ins。如果你是Custom Code Action,要選擇General里面的
                       Execute Custom Code,如果你是custom code panels,你要選擇Panels里面的Execute Custom Code,如果是custom code consoles,
                       要選擇Consoles里面的Execute Custom Code,如果是custom code rules,不能通過Add Action添加,你需要點擊Add Rule-->evaluate custom code
                       來執行
                    二)打包成plugin
                    先寫好代碼,然后用javac命令編譯(當然你也可以用eclipse,netbean來得到class文件)。
                    創建一個properties文件,然后把這個properties文件打包成一個jar包。可見與第一種方法的區別就是多了一個屬性文件
                    舉一個屬性文件的例子:
                     plguin.name=my custom action
                     plugin.main.class=MySampleAction
                     plugin.type=action
                     //如果你寫了preinstall,那在preinstall view中Add Action-->Plugin里面可以看見這個plugin,否則是看不見的。
                     plugin.available=preinstall,install,postinstall
                     //property.myproperty=this value
                     property.database=localhost
                     打包完成后,把jar包拷貝到IA安裝目錄下的plugins文件夾,然后重啟IA(eclipse的用戶肯定很熟悉這個操作吧,呵呵) 
                     然后你就可以在Add Action-->Plug-Ins里面發現你自己寫的plugin了。
                     最后列一下IA提供的api中比較重要的方法(IA提供了一個zip包IAClasses.zip在IA安裝目錄下)
                     public class MySampleAction extends CustomCodeAction
                     {
                      public  void install(InstallerProxy ip)
                    {
                     }
                     }
                     subsititue(String var)-recursively gets the variable value
                    getVariable(String var)- jaut gets the variable value
                for example:
                     database_name=$user_install_dir$/mydir
                    subsititue(String var) C:\pf\macrovision\mydir
                    getVariable(String var)
                     $user_install_dir$/mydir
                    
                      public class MyCustom Panel extend CustomCodePanel{
        public boolean setupUI(CustomCodePanelProxy ccpp){
            //execute some condition or logic
            return true or false;//if true ,display,or don't display
            public voidpanelIsDisplayed()
            {//you will put controls and logic for displaying the panel
           
            //this is where you will use java's swing classes to display controls on your dialogs
            //just for text area,if you wanna add a button to the bottom,then you need
            //to create a new dialog by swing ,
            }
            public boolean okToContinue()
            {
            }
        }
        }
     
       public class MyCustomConsole extend CustomCodeConsoleAction{
        public boolean setup(CustomCodePanelProxy ccpp){
        //any validation you want to execute before displaying this console panel
        you will put here
            }
        
        }
        }
        public class MyCustomRule extends CustomCodeRule{
     
            public void evaluateRule()
            {
            //in this method,you can put the logic to evaulate this custom rule
            //return true or false
            }
        }
        }
        在IA安裝目錄下的Custom Code文件夾,你可以找到一些sample code,更多的sample code可以到
        它的網站上查詢。

            最后,引用training teacher的一句話作為本文的結尾“不管你的產品有多好,用戶第一印象是看你的安裝程序,如果你的安裝程序不夠人性化,甚至安裝失敗了,那用戶對它的評價就不會高”

    posted on 2007-07-30 17:09 小牛小蝦 閱讀(3350) 評論(1)  編輯  收藏

    評論

    # re: InstallShield InstallAnywhere 培訓要點記錄(二) 2008-10-08 10:11 bluehouse1985

    InstallShield & InstallAnywhere 漲價前最后一次特賣!
    Acresso公司主打產品installshield和installanywhere從11月1日起全面漲價!InstallShield & InstallAnywhere 漲價前最后一次特賣!僅10天!先到先得!
    為慶祝最新版InstallShield 2009 & InstallAnywhere 2009上市,答謝廣大新老用戶的支持與厚愛,從即日起,上海世全軟件(XLsoft)舉辦Acresso產品優惠活動!數量有限,售完為止!
    銷售熱線:021-62128912/010-64616123
    銷售郵箱:sales@XLsoft.com.cn
    XLsoft網站:http://www.xlsoft.com.cn/

    InstallShield 2009 & InstallAnywhere 2009 雙重驚喜,閃亮登場!
    InstallShield 是軟件安裝、配置軟件包和升級解決方案領域內公認的標準,強大靈活而又簡單易用。首次使用的開發者將發現它非常容易創建安裝程序,而高級用戶也將發現它的潛力與靈活性,非常適合開發復雜的軟件安裝。InstallShield 2009 現在支持最新的Microsoft Windows Vista,包括 Internet Explorer 7、Windows Installer 4 和其它令人耳目一新的新技術,對微軟最新技術的支持、重要性能、品質和功能的改進,讓你充分適應Windows Vista。
    InstallShield 中文官方網站
    http://www.installanywhere.com.cn
    InstallAnywhere 是領先的多平臺安裝解決方案,供軟件生產商使用。它為所有支持的平臺提供統一的、自定義的安裝體驗,快速而且簡單。InstallAnywhere 提供完整的高品質安裝工具套件,以生成功能全面、靈活的安裝程序。它包含大量的新功能,讓您的軟件部署和客戶端配置易如反掌。有了 InstallAnywhere,您可專心開發優秀的軟件,而不用在意如何部署軟件。
    Installanywhere 中文官方網站
    http://www.installanywhere.com.cn

    InstallShield 2008 => 2009 新特性
    八個升級到InstallShield 2009 的理由:
    ● InstallShield 2009 通過InstallShield 預取器在統一的安裝界面連接多個MSI文件
    ● 微軟 Installer 4.5 支持
    ● Visual Studio 2008 支持
    ● .NET Framework 3.5 支持
    ● Managed-Code Custom Action 支持,允許整合多個模塊化工程
    ● Installing Multiple Product Instances 允許支持多個產品示例
    ● 允許MSI文件在同一臺機器安裝多個示例
    ● 增強的希伯來文和阿拉伯文的支持

    InstallShield 簡介
    著名的專業安裝程序制作軟件,支持修改Autoexec.bat, config.sys、注冊表、加入產品德注冊碼,自動生成反安裝程序,功能非常強大。
    它有以下幾種版本:
    InstallShield Premier Edition
    InstallShield Professional Edition
    InstallShield Premier Edition - 功能最強大、最靈活的Windows安裝方案。主要功能有無與倫比的Windows Installer(MSI)支持、結合了Visual Studio .NET、補丁的創建、可視化對話框編輯器(Visual Dialog Editor)、源代碼控件。(此版本包含了老版本中的東方語言包和西方語言包)
    InstallShield Professional – 專業版 是商業和企業開發商們進行創建復雜的企業標準版Windows安裝程序的明智選擇!
    銷售熱線:021-62128912/010-64616123
    銷售郵箱:sales@XLsoft.com.cn
    XLsoft網站:http://www.xlsoft.com.cn/

    InstallShield 中文官方網站
    http://www.installanywhere.com.cn


      回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2007年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

    導航

    統計

    常用鏈接

    留言簿(6)

    隨筆檔案

    文章檔案

    eclipse

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久91亚洲精品中文字幕| 久久久久亚洲精品天堂久久久久久 | 久久久无码精品亚洲日韩蜜臀浪潮 | 日本免费无遮挡吸乳视频电影| 亚洲啪啪免费视频| 五月婷婷在线免费观看| 亚洲精品福利网泷泽萝拉| 97在线视频免费公开观看| 亚洲高清在线mv| 我的小后妈韩剧在线看免费高清版| 国产免费久久精品99久久| 亚洲第一永久AV网站久久精品男人的天堂AV | 国产亚洲中文日本不卡二区| 免费电视剧在线观看| 亚洲日韩中文字幕无码一区| 免费无码黄动漫在线观看| 国产亚洲美女精品久久久久狼| 99久久免费国产精品热| 亚洲最大成人网色| 日韩视频在线精品视频免费观看| 国产色在线|亚洲| 四虎影永久在线高清免费| 一个人看的www在线免费视频| 日韩在线播放全免费| 日本亚洲免费无线码 | 国产小视频在线观看免费| 九九免费观看全部免费视频| 国产精品亚洲成在人线| 精品国产污污免费网站aⅴ | 亚洲w码欧洲s码免费| 国产美女无遮挡免费网站| 一级特级aaaa毛片免费观看| 久久亚洲精品成人777大小说| 久久午夜免费视频| 四虎影视永久在线精品免费| 亚洲AV无码一区东京热| 免费中文熟妇在线影片| 国产精品玖玖美女张开腿让男人桶爽免费看| 最近2019中文字幕免费看最新| 青娱乐在线视频免费观看| 久久久久亚洲精品成人网小说 |