打包安裝的一些準則之我見–歡迎拍磚歡迎補充

從做第一個打包程式到現在,陸陸續續也做了幾十個安裝包了,也協助了不少朋友解決他們在製作安裝包過程中的問題,也得到了不少朋友們在安裝包方面的指導。人之患在好為人師,我也不例外,看得多了也想說兩句關於打包方面的自己的想法,放大了說,也可以做到編程的一些參考。歡迎拍磚歡迎跟帖歡迎補充。1.如何入門?Installshield挺難的,資料少,沒有中文版,而且做安裝包的同仁也少。很多新手進入Q群,第一句話就是:各位大大,我要打包一個安裝程式,要自動安裝MySQL,初始化資料庫,寫設定檔,安裝完畢還要自動啟

Installshield關於.NET安裝時需要重啟動的處理辦法,以及延伸出的重啟後繼續安裝的安裝包的一點想法

很多朋友做安裝包的時候,所打包的軟體需要.NET Framework之類的環境,他們會檢測系統是否已經安裝了.NET,如果沒有,則調用.NET安裝包來安裝。但是.NET安裝完是需要重啟動的,一般來說,我們都推薦使用/q/norestart的靜默安裝函數來使重啟動延遲到安裝結束時,使用如下:LaunchAppAndWait(SUPPORTDIR^"dotNetFx40_Full_x86_x64.exe","/q

一個簡單的帶序號輸入的安裝包

首先建立一個Installscript Project在Installation Designer中,找到Behavior and Logic -> Install Script, 在Setup.rul中找到Before Move Data -> OnFirstUIBefore,找到Dlg_SdRegisterUser標籤中一: 用 nResult =

尋找Access運行庫的版本號碼

目的:擷取access運行庫在註冊表中的字串,然後根據這個字串擷取裡面的access的版本號碼,如果版本號碼小於12就返回false,如果大於12就返回true function BOOL checkAccessRuntime()string szKey,szValue,svReturnString,svSubStr; number nType,nSize,nvVar,i; string szFindMe;begin    nType=REGDB_STRING ;    nSize=-1;   

不重新編譯安裝包,實現installshield製作的安裝程式檔案更新

 目標:不重新編譯安裝包,實現installshield製作的安裝程式檔案更新環境:IS2009實現步驟:1. 從安裝目錄的.\system下提取iscab.exe,ISTools.dll,MediaBuild40.dll檔案,將它們拷貝到自建的檔案夾中,例如這裡拷貝到d:\test目錄。 2. 將要更改的安裝包拷貝也拷貝到d:\test目錄 進入cmd視窗,,輸入d:,,再輸入cd test,進入d:\test目錄。之後使用命令列iscab data1.cab -lx

安裝導論–謹以此文與那些徘徊在安裝的大門外,並且被花哨的功能所迷惑的朋友們共勉。

很多年前的一個秋天的下午,我在上一堂編程課,老師先讓我們把編程工具裝上。因為很多電腦比較破舊,安裝紛紛出了問題,老師看看也來不及講課了,索性一邊幫我們裝軟體,一邊講起了安裝的一些知識。老師問:你們知道安裝的本質是什麼嗎?給出的答案五花八門,有的說是讓使用者能用起來的一種方式,有的說是涉及到微機原理了,有的則認為是讓電腦識別你的軟體。老師微微一笑,說道:安裝的本質,就是拷貝。當時的我還處於對電腦原理都不甚了了,裝個軟體都戰戰兢兢生怕把系統裝出問題來的水平,對這句話,自然是不理解的,甚至很快就把它淡

設計模式學習-Decorator(裝飾)

 意圖:動態為一個對象添加一些額外的職責,Decorator比子類更加靈活樣本圖:適用性:在不影響對象的情況下,以動態,透明的方式給單個對象添加職責處理那些可以撤銷的職責但不能使用子類進行擴充時/類被隱藏/類定義不能產生子類…注意事項:裝飾對象的介面必須與它所裝飾的Component的介面一致範例程式碼://Compnent同時也是基類class CText{public:    CText(void);public:   ~CText(void);    public://繪製介面   

驗證密碼複雜度

1.要求:驗證密碼的複雜度,要求至少要包含6個字元 ;包含以下四類字元中的三類字元:英文小寫字母(a 到 z);英文大寫字母(A 到 Z);10 個基本數                  字(0 到 9);非字母字元(例如 !、$、#、%)。2.工程類型:IS2010  installscript 3.定義變數:            string DBPassword;              INT  i,iLength;             number

設計模式學習-FLYWEIGH(享元)

意圖:運用共用技術有效地支援大量細粒度的對象,FLYWEIGHT對那些通常因為數量太多而難以用對象來表示的概念或者實體進行建模.:適用性:對象可以被共用使用的情況範例程式碼://flyweight類class CPerson{public:    CPerson(int id)   {        m_id = id;    }public:    ~CPerson(void)   {        }    public:    void Number()   

設計模式分類)

1.建立型模式前面講過,社會化的分工越來越細,自然在軟體設計方面也是如此,因此對象的建立和對象的使用分開也就成為了必然趨勢。因為對象的建立會消耗掉系統的很多資源,所以單獨對對象的建立進行研究,從而能夠高效地建立對象就是建立型模式要探討的問題。這裡有6個具體的建立型模式可供研究,它們分別是:簡單原廠模式(Simple Factory);Factory 方法模式(Factory Method);抽象原廠模式(Abstract

MyEclipse SSH初體驗

 17:44SSH即Struts+spring+hibernate架構.本次體驗使用的Struts2+spring3+hibernate31,建立ssh工程.2,添加hibernate訪問資料庫Windows->show

Installshield自動安裝IIS組件

一. 工程類型:IS2010 installscript二.原理:1. XP和 Server2003系統:由於系統預設沒有內建IIS組件,一般情況我們是需要通過添加刪除程式----WINDOWS組件安裝介面並插入系統硬碟來進行安裝。實際上我們可以不調出添加刪除程式介面,而通過系統可選組件安裝管理進程”sysocmgr.exe”(system stand-alone optional component

設計模式學習-Facade(外觀)

 意圖:為子系統中的一組介面提供一個一致的介面.定義一個高層介面,該介面是的這一個子系統的更加容易使用.動機:是的子系統之間的通訊和相互依賴達到最小,達到該目的的途徑之一就是引入一個外觀(Facade)對象,它為子系統中較為一般的設施提供了一個單一而簡單的介面.樣本圖:Facade作為生態子系統的統一介面用於外接互動適用性:為複雜子系統提供一個簡單介面Facade提供了客戶與子系統以及其他子系統的分離為各個自系統提供每層的進入點.範例程式碼://生態子系統的Facade類作為外部介面的介面,內部

設計模式學習-Memento(備忘錄)

 意圖:在不破壞封裝性的前提下,捕獲一個對象的內部狀態,並在該對象之外儲存這個狀態,這樣以後就可將該對象恢複到原先儲存的狀態。一個備忘錄(Memento)是一個對象,它儲存另一個對象在某個瞬間的內部狀態,而後者稱為備忘錄的原發器(Originator)適用性:必須保持某個對象在某個時刻的狀態如果一個用介面來讓其它對象這節得到這些狀態,將會暴露對象的實現細節並破壞對象的封裝性樣本圖:範例程式碼://線條類class CLine{public:   

Spring Security初體驗

 1,配置過濾器為了在項目中使用SpringSecurity控制許可權,首先要在web.xml中配置過濾器,這樣我們就可以控制對這個項目的每個請求了。<filter>   <filter-name>springSecurityFilterChain</filter-name>   <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class&g

Installshield指令碼拷貝檔案常見問題匯總

很多朋友經常來問:為什麼我用CopyFile/XCopyFile函數拷貝檔案無效?引起這種情況的原因有很多,今天略微總結了一下,歡迎各位朋友跟帖補充不完善的地方1:檔案路徑錯誤,比如將CopyFile/XCopyFile指令碼放在OnFirstUIBefore裡,但是引用的檔案路徑卻是INSTALLDIR/TARGETDIR的,而這時候,安裝程式還未將安裝檔案拷貝至使用者安裝路徑,當然是找不到可拷貝的檔案的調試和解決辦法:在任何拷貝之前,用FindFile函數來確定你的檔案路徑是否正確;有必要時

設計模式學習-Builder(產生器

 意圖:將一個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示:適用性:當建立複雜物件的演算法應該獨立於該對象的組成部分以及它們的裝配方式時當構造過程必須允許被構造的對象有不同的表示時範例程式碼://組件類class CPart{public:    CPart(void);public:   ~CPart(void);public:    virtual void Build()=0;    virtual voidDisplay()=0;};//組件Aclass

設計模式學習—Mediator(中介者)

 意圖:用一個中介對象來封裝一系列的獨享互動。中介者使得各對象不需要顯式的相互引用,從而使得其耦合鬆散,而且可以獨立的改變他們之間的互動.適用性:一組對象以定義好,但是通訊複雜,相互依賴關係結構混亂一個對象引用其他對象並且直接通訊想定製一個分布在多個類中的行為,但是又不想定義多個子類樣本圖:樣本程式://資訊變化之後通知中介者,中介者來調用相關對象進行相應的控制class CMediator{public:    CMediator();public:   ~CMediator(void);  

Struts tiles初體驗

1,建立web project2,定義tiles.xml內容如下:<?xmlversion="1.0" encoding="UTF-8"standalone="no"?><!DOCTYPE tiles-definitions SYSTEM"C:/JavaDemo/dbDemo/userInfoWeb/WebRoot/WEB-INF/tiles-config_2_1.dtd"> <tiles-definitions>   <definitionname="

設計模式學習—Obeserver(觀察者)

意圖:定義對象的一種一對多的依賴關係,當一個對象的狀態發生改變時,所以依賴於它的對象都要得到通知並且自動更新 適用性: 一個對象依賴於另外一個對象時,將這兩者封裝在獨立的對象中以使它們各自獨立地改變和使用 當對一個對象的改變需要同時改變其它對象而不知道具體有多少對象有待改變 當一個對象必須通知其它對象,而它又不能假設其它對象是誰。換言之,你不希望這些對象時緊密耦合的。 樣本圖: mvc模式 範例程式碼: (mvc模式略…)

總頁數: 61357 1 .... 6087 6088 6089 6090 6091 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.