Miről lesz szó?
Setup Project készítése
Szabadi Tamás
[email protected]
Setup project készítése egy már meglévő, lefordított programhoz Specifikus Setup project készítése egy általunk készített projecthez ClickOnce
2
1
Tulajdonságok
1. Készítsünk egy setup project alkalmazást egy már elkészített, lefordított programhoz.
Windows 95 óta elérhető Alkalmazások által használt állományokat egyetlen csomagba gyúrták – könnyű szállíthatóság Önjavítás (repair) lehetősége Rollback (Egy adatbázison nyitott tranzakció keretében végzett módosítások visszavonása, és ezen keresztül a módosítások megkezdése előtti állapot visszaállítása.) Output: .msi – telepítés indítása (szükséges adminisztrátor jog!) 3
4
5
ProductName átírása RemovePreviousVersion := true, segítségünkre lehet későbbi új verzió létrehozásakor (törli az előző verziót)
6
Adjuk hozzá a programunk exe-jét az Application Folder -hez (minden exebeli változtatás esetén fordítsuk újra a setup project-et!) Adjuk hozzá a szükséges config, illetve icon file-okat
Application Folder property: DefaultLocation alapból:
[ProgramFilesFolder] [Manufacturer]\[ProductName]
Függőségek automatikus érzékelése (.NET Framework telepítésére nem kerül sor!) .NET Framework nélkül a Setup project nem telepít semmilyen .NET application-t! AlwaysCreate property legyen true (pl shortcut készítéshez)
7
8
Shortcut készítés
User’s Desktop – jobbklikk – Create New Shortcut
A dialogban válasszuk ki az Application Folderbeli exe-t
Az installer ne hozza létre minden release-nél a Shortcut-ot! Condition = FILEEXISTS1<>"Shortcut to RunOnceOnlyCS.exe„ Transitive property legyen true (minden installnál és reinstallnál értékelje ki a Condition –t) Icon kép: Shortcut Icon property–jénél adjuk meg
9
10
Shortcut készítés a Start menübe
Verzió
User’s Programs menüben a kívánt könyvtárszerkezet létrehozása Az előbbiek szerint egy új shortcut készítése
11
Verzió megadása a Setup project property –jében
Update-eljük a ProductCode –ot, különben nem fog működni megfelelően a régi verzió eltávolítása, illetve az új telepítése Megjegyzés: NE változtassuk meg manuálisan az UpgradeCode – ot, különben telepítés előtt szükséges a régi verzió eltávolítása „Unrecoverable build error” esetén: „regsvr32 ole32.dll” 12
2. Új Probléma – specifikus setup project
Előkészületek
Új ablak Választható Asztal ikon, Start menü, Quick Launch ikon
1.
2.
3.
Készítsük el a projectünket, amihez az installshield-et szeretnénk készíteni. Adjunk hozzá a solution-höz egy új setup projectet Készítsük el az ikonok megfelelő helyre helyezéséért felelős formot, ezt fogjuk felhasználni a setup project során !
13
A kód – Desktop ikon
Speciális könyvtárak elérése
14
// Create shortcut on Desktop if(cbDesktop.Checked==true) { File.Move(Application.StartupPath+ "\\Shortcut to Test.lnk", Environment.GetFolderPath( Environment.SpecialFolder.Desktop).Trim( )+ "\\Shortcut to Test.lnk"); }
Speciális könyvtárak: Desktop, My Documents, Start Up, stb…) System.Environment.GetFolderPath( ) segít elérni a speciális könyvtárakat Paramétere: Environment.SpecialFolder (pl Desktop, Programs, ApplicationData) Készítsük el az ikonokat elhelyező programot (shortcut.exe) 15
A kód – Start menü ikon
16
A kód – Quick Launch ikon
// Create shortcut in programs menu. if(cbStartMenu.Checked==true) { File.Move(Application.StartupPath+"\\Test1.lnk", Environment.GetFolderPath( Environment.SpecialFolder.Programs).Trim( )+ "\\Test.lnk"); } 17
// Create shortcut in Quick Launch Toolbar if(cbQuickLaunch.Checked==true) { File.Move(Application.StartupPath+ "\\Test2.lnk",Environment.GetFolderPath( Environment.SpecialFolder.ApplicationData)+ "\\Microsoft\\Internet Explorer\\" + "Quick Launch\\Test.lnk"); } 18
Válasszuk ki a ‘Primary output’-ot a dialog ablakból
A projektünkhöz hozzáadott Setup Project-hez adjuk hozzá a projektünk output-ját 19
A csatolt .exe a következőképpen néz ki
Készítsünk parancsikont a primary outputhoz (jobbklikk)
20
Elkészült az ikonunk
Custom Action beállításai
21
A Custom Action ablakban többféle Action-t beállíthatunk. Nekünk most az ‘install’-ra lesz szükségünk.
22
Válasszuk ki az Application Folder-t, majd Add File
Adjunk hozzá egy Custom Action –t.
23
24
Válasszuk ki az előre megírt Shortcut.exe –t, ami az ikonok megfelelő helyre történő berakásáért felelős formot valósítja meg.
Sikerült elhelyezni a Shortcut.exe –t az Install Custom Action –ben
Állítsuk át a Shortcut.exe InstallerClass property-jét falsera.
25
26
3. The Magic of ClickOnce
Példa Smart Client készítése
Webről indítható, telepíthető alkalmazások Minden induláskor ellenőrzi, hogy elérhető-e frissítés, és ha igen, telepíti azt. Elkészítése rendkívül könnyű, és fájdalommentes
Készítsünk egy új almalmazást Adjunk hozzá egy naptárat
27
28
Publish Lehetőségek:
Fordítsuk le a Smart Client windows alkalmazásunkat! (Build / Build SmartClient) Tegyük közzé az alkalmazásunkat (Build / Publish SmartClient)
29
Merevlemez Megosztott könyvtár FTP szerver Webszerver
30
A példánkban használjunk webszervert
Beállíthatjuk, hogy a felhasználó offline is használhassa-e az alkalmazásunkat.
31
32
Meg kell jelölnünk az alkalmazásunkat (azonosításhoz)!
Új kulcs készítése Kódolt kulcs készítése Key Provider használata
Kész a publikálásra a programunk ! Finish után bejön a weboldal, ahol telepíthetjük az alkalmazásunkat
33
34
A fenti oldalon telepíthetjük az alkalmazásunkat.
35
Biztonsági figyelmeztetés – Biztosan telepítjük az alkalmazást?
36
A clickonce erőssége
Sikeresen feltelepült az alkalmazásunk Bekerült a Start menübe
Az alkalmazások frissítése
Módosítsuk az alkalmazásunkat egy TimePicker controllal
37
Módosítás után hajtsuk végre újra a publikálási lépéseket Következő indításnál a felhasználót értesíti a program a frissítések elérhetőségéről!
38
39
VÉGE ! Felhasznált oldalak: http://www.codeproject.com http://msdn2.microsoft.com http://google.com 41
A felhasználónak ezután is lehetősége van visszaállítani az előző verziót (Control Panel Add/Remove programs)
40