Getting chrome registered in the build, necessary to fix install overlay problem

(bugSCAPE bug 1011), r=ssu
This commit is contained in:
dveditz%netscape.com 2000-05-24 14:08:46 +00:00
parent 2af893e00b
commit f7e354c4f1
21 changed files with 300 additions and 183 deletions

View File

@ -15,21 +15,8 @@ function verifyDiskSpace(dirPath, spaceRequired)
logComment("Insufficient disk space: " + dirPath);
logComment(" required : " + spaceRequired + " K");
logComment(" available: " + spaceAvailable + " K");
abortInstall(INSUFFICIENT_DISK_SPACE);
return(false);
}
return(true);
}
function checkError(errorValue)
{
if((errorValue != SUCCESS) && (errorValue != REBOOT_NEEDED))
{
abortInstall(errorValue);
return(true);
}
return(false);
} // end checkError()

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Seamonkey", "Browser", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Seamonkey", "Browser", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
var subFolder = "Mozilla Folder";
@ -20,20 +20,28 @@ logComment("addDirectory() returned: " + err);
// ignoreErr = dirCreate(pluginsFolder);
// logComment("dirCreate() returned: " + ignoreErr);
var ctype = (CONTENT | DELAYED_CHROME);
var cf = getFolder("Chrome");
registerChrome(ctype, getFolder(cf,"packages/core"));
registerChrome(ctype, getFolder(cf,"packages/widget-toolkit"));
registerChrome(SKIN|DELAYED_CHROME, getFolder(cf,"skins/modern"));
registerChrome(LOCALE|DELAYED_CHROME, getFolder(cf,"locales/en-US"));
err = getLastError();
// make an alias to the browser on the desktop
var desktopFolder = getFolder("Mac Desktop");
var appFolder = getFolder("Communicator", subFolder);
var appFolder = getFolder("Program", subFolder);
var ignoreErr = fileMacAlias(appFolder, "Mozilla", // source
desktopFolder, "Mozilla"); // target
logComment("fileMacAlias() returned: " + ignoreErr);
if (err==SUCCESS || err==REBOOT_NEEDED)
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() due to error: " + err);
cancelInstall(err);
logComment("cancelInstall() due to error: " + err);
}

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Mail", "Mail", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Mail", "Mail", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
err = addDirectory("Program",
@ -13,15 +13,19 @@ err = addDirectory("Program",
logComment("addDirectory() returned: " + err);
err = registerChrome(CONTENT | DELAYED_CHROME,
getFolder("Chrome","packages/messenger"));
logComment("registerChrome() returned: " + err);
err = getLastError();
if (err==SUCCESS || err==REBOOT_NEEDED)
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() due to error: " + err);
cancelInstall();
logComment("cancelInstall() due to error: " + err);
}

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Seamonkey", "Browser", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Seamonkey", "Browser", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
var subFolder = "Mozilla Folder";
@ -15,13 +15,13 @@ err = addDirectory("Program",
logComment("addDirectory() returned: " + err);
if (err==SUCCESS || err==REBOOT_NEEDED)
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() returned: " + err);
cancelInstall();
logComment("cancelInstall() returned: " + err);
}

View File

@ -150,7 +150,8 @@ viewer:Components:Necko2.shlb
viewer:Components:necko.xpt
viewer:chrome:locales:*
viewer:chrome:packages:*
viewer:chrome:packages:core:*
viewer:chrome:packages:widget-toolkit:*
viewer:chrome:skins:*
-viewer:chrome:packages:core:editor:content:EditorInitPage.html
-viewer:chrome:packages:core:editor:content:EditorInitPagePlain.html
@ -173,7 +174,6 @@ viewer:chrome:xul.css
viewer:chrome:xulBindings.xml
viewer:defaults:pref:all.js
viewer:defaults:pref:mailnews.js
viewer:defaults:pref:config.js
viewer:defaults:Pref:editor.js
viewer:defaults:pref:initpref.js
@ -232,6 +232,8 @@ viewer:res:ua.css
viewer:res:URLFieldSchema.tbl
[mail]
viewer:chrome:packages:messenger:*
viewer:defaults:pref:mailnews.js
viewer:Components:MsgAddrbook.shlb
viewer:Components:MsgAddrbook.xpt
viewer:Components:mimeEmitter.shlb
@ -260,3 +262,7 @@ viewer:Components:msgImportEudora.shlb
viewer:Components:AbSyncSvc.shlb
viewer:Components:AbSyncSvc.xpt
viewer:res:Mailnews:*
[chatzilla]
viewer:Components:chatzilla-service.js
viewer:chrome:packages:chatzilla:*

View File

@ -18,7 +18,6 @@ bin/libxpcom.so
bin/libxpistub.so
bin/components/libxpinstall.so
bin/components/libjar50.so
bin/component.reg
[browser]
bin/mozilla
@ -38,7 +37,6 @@ bin/libxlibrgb.so
bin/run-mozilla.sh
bin/regExport
bin/regxpcom
bin/vreg
bin/components/addrbook.xpt
bin/components/appshell.xpt
@ -99,7 +97,6 @@ bin/components/liburiloader.so
bin/components/libwallet.so
bin/components/libwalletviewers.so
bin/components/libxpconnect.so
bin/components/libxpiflash.so
bin/components/locale.xpt
bin/components/libtbmb.so
bin/components/tbmb.xpt
@ -144,14 +141,10 @@ bin/components/xpcom_base.xpt
bin/components/xpcom_ds.xpt
bin/components/xpcom_io.xpt
bin/components/xpconnect.xpt
; this is only there if you build the irc client
; bin/components/bs.xpt
bin/components/chrome.xpt
bin/components/docshell.xpt
bin/components/jsurl.xpt
bin/components/layout.xpt
; this is only there if you build the irc client
; bin/components/libbs.so
bin/components/libjsloader.so
bin/components/libnsprefm.so
bin/components/libregviewer.so
@ -173,9 +166,18 @@ bin/components/xml-rpc.xpt
bin/components/nsDictionary.js
bin/components/nsXmlRpcClient.js
bin/chrome/locales/*
bin/chrome/packages/*
bin/chrome/skins/*
bin/chrome/autocomplete.xml
bin/chrome/htmlBindings.xml
bin/chrome/menulistBindings.xml
bin/chrome/platformHTMLBindings.xml
bin/chrome/radioBindings.xml
bin/chrome/treeBindings.xml
bin/chrome/xul.css
bin/chrome/xulBindings.xml
bin/chrome/locales/en-US/*
bin/chrome/packages/widget-toolkit/*
bin/chrome/packages/core/*
bin/chrome/skins/modern/*
-bin/chrome/packages/core/editor/content/EditorInitPage.html
-bin/chrome/packages/core/editor/content/EditorInitPagePlain.html
;Include this for "debug" testing - remove for actual beta release:
@ -189,18 +191,9 @@ bin/chrome/skins/*
-bin/chrome/packages/core/editor/content/viewsource.js
-bin/chrome/packages/core/editor/content/viewsource.xul
-bin/chrome/packages/core/communicator/content/domviewer
bin/chrome/autocomplete.xml
bin/chrome/htmlBindings.xml
bin/chrome/radioBindings.xml
bin/chrome/treeBindings.xml
bin/chrome/menulistBindings.xml
bin/chrome/platformHTMLBindings.xml
bin/chrome/xul.css
bin/chrome/xulBindings.xml
bin/defaults/pref/editor.js
bin/defaults/pref/all.js
bin/defaults/pref/mailnews.js
bin/defaults/pref/config.js
bin/defaults/pref/initpref.js
bin/defaults/pref/unix.js
@ -267,6 +260,12 @@ bin/components/msgsearch.xpt
bin/components/txmgr.xpt
bin/components/import.xpt
bin/components/absync.xpt
bin/chrome/packages/messenger/*
bin/defaults/pref/mailnews.js
; this doesn't seem to be in the tree. -blizzard
;bin/help/mailhelp/*
[chatzilla]
bin/components/chatzilla-service.js
bin/chrome/packages/chatzilla/*

View File

@ -35,10 +35,13 @@ bin\mozilla.exe
bin\oji.dll
bin\prstrms4.dll
bin\mozctl.dll
bin\regxpcom.exe
bin\components\AcctIdl.dll
bin\components\AcctIdl.xpt
bin\components\appshell.xpt
bin\components\appshell.dll
bin\components\autocomp.dll
bin\components\autocomplete.xpt
bin\components\bookmark.dll
bin\components\bookmarks.xpt
bin\components\caps.dll
@ -157,18 +160,25 @@ bin\components\xpcom_io.xpt
bin\components\xpcom_nativeapp.xpt
bin\components\xpcom_thread.xpt
bin\components\xpconnect.xpt
bin\components\xpiflash.dll
bin\components\xpinstall.xpt
bin\components\xppref32.dll
bin\components\autocomp.dll
bin\components\autocomplete.xpt
bin\components\xml-rpc.xpt
bin\components\nsDictionary.js
bin\components\nsXmlRpcClient.js
bin\chrome\locales\*
bin\chrome\packages\*
bin\chrome\skins\*
; chrome stuff
bin\chrome\autocomplete.xml
bin\chrome\htmlBindings.xml
bin\chrome\menulistBindings.xml
bin\chrome\platformHTMLBindings.xml
bin\chrome\radioBindings.xml
bin\chrome\treeBindings.xml
bin\chrome\xul.css
bin\chrome\xulBindings.xml
bin\chrome\packages\core\*
bin\chrome\packages\widget-toolkit\*
bin\chrome\locales\en-US\*
bin\chrome\skins\modern\*
-bin\chrome\packages\core\editor\content\EditorInitPage.html
-bin\chrome\packages\core\editor\content\EditorInitPagePlain.html
;Include this for "debug" testing - remove for actual beta release:
@ -182,17 +192,8 @@ bin\chrome\skins\*
-bin\chrome\packages\core\editor\content\viewsource.js
-bin\chrome\packages\core\editor\content\viewsource.xul
-bin\chrome\packages\core\communicator\content\domviewer
bin\chrome\autocomplete.xml
bin\chrome\htmlBindings.xml
bin\chrome\menulistBindings.xml
bin\chrome\radioBindings.xml
bin\chrome\treeBindings.xml
bin\chrome\platformHTMLBindings.xml
bin\chrome\xul.css
bin\chrome\xulBindings.xml
bin\defaults\pref\all.js
bin\defaults\pref\mailnews.js
bin\defaults\pref\config.js
bin\defaults\pref\initpref.js
bin\defaults\pref\psm-glue.js
@ -221,8 +222,6 @@ bin\res\toolbar\*
;debug menus reference samples dir - remove for actual releases:
bin\res\samples\*
bin\irc\*
[mail]
bin\msgbsutl.dll
bin\components\addrbook.dll
@ -256,4 +255,10 @@ bin\components\impEudra.dll
bin\components\impText.dll
bin\components\absyncsv.dll
bin\components\absync.xpt
bin\chrome\packages\messenger\*
bin\defaults\pref\mailnews.js
bin\help\mailhelp\*
[chatzilla]
bin\components\chatzilla-service.js
bin\chrome\packages\chatzilla\*

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Seamonkey", "Seamonkey", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Seamonkey", "Seamonkey", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
err = addDirectory("Program",
@ -18,13 +18,21 @@ var pluginsFolder = getFolder("Plugins");
var ignoreErr = dirCreate(pluginsFolder);
logComment("dirCreate() returned: " + ignoreErr);
if (err==SUCCESS || err==REBOOT_NEEDED)
var ctype = (CONTENT | DELAYED_CHROME);
var cf = getFolder("Chrome");
registerChrome(ctype, getFolder(cf,"packages/core"));
registerChrome(ctype, getFolder(cf,"packages/widget-toolkit"));
registerChrome(SKIN|DELAYED_CHROME, getFolder(cf,"skins/modern"));
registerChrome(LOCALE|DELAYED_CHROME, getFolder(cf,"locales/en-US"));
err = getLastError();
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() due to error: " + err);
cancelInstall(err);
logComment("cancelInstall() due to error: " + err);
}

View File

@ -0,0 +1,22 @@
var err = initInstall("Chatzilla v0.5", "Chatzilla", "$Version$");
logComment("initInstall: " + err);
addFile("Chatzilla service",
"bin/components/chatzilla-service.js",
getFolder("Components"),
"");
var fChat = getFolder("Chrome","packages/chatzilla");
addDirectory("",
"bin/chrome/packages/chatzilla", // jar source folder
fChat, // target folder
""); // target subdir
registerChrome(PACKAGE | DELAYED_CHROME, fChat);
err = getLastError();
if (err==SUCCESS)
performInstall();
else
cancelInstall(err);

View File

@ -88,6 +88,13 @@ $InstallSize$:mail
Attributes=SELECTED
URL0=$URLPath$
[Component3]
Description Short=Chatzilla
Description Long=Chatzilla IRC client
Archive=chatzilla.xpi
$InstallSize$:chatzilla
Attributes=SELECTED
URL0=$URLPath$
;-------------------------------------------------------------------------
[Dialog Start Install]

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Editor", "Seamonkey", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Editor", "Seamonkey", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
err = addDirectory("Program",
@ -14,15 +14,15 @@ err = addDirectory("Program",
logComment("addDirectory() returned: " + err);
err = getLastError();
if (err==SUCCESS || err==REBOOT_NEEDED)
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() due to error: " + err);
cancelInstall(err);
logComment("cancelInstall() due to error: " + err);
}

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Mail", "Seamonkey", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Mail", "Seamonkey", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
err = addDirectory("Program",
@ -13,15 +13,18 @@ err = addDirectory("Program",
logComment("addDirectory() returned: " + err);
registerChrome(CONTENT | DELAYED_CHROME,
getFolder("Chrome","packages/messenger"));
err = getLastError();
if (err==SUCCESS || err==REBOOT_NEEDED)
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() due to error: " + err);
cancelInstall(err);
logComment("cancelInstall() due to error: " + err);
}

View File

@ -67,11 +67,13 @@ if(!(-e "$inDistPath"))
MakeJsFile("xpcom");
MakeJsFile("browser");
MakeJsFile("mail");
MakeJsFile("chatzilla");
# Make all xpi files
MakeXpiFile("xpcom");
MakeXpiFile("browser");
MakeXpiFile("mail");
MakeXpiFile("chatzilla");
# Make the config.ini file
MakeConfigFile();

View File

@ -1,7 +1,7 @@
var err = startInstall("Mozilla Seamonkey", "Seamonkey", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Seamonkey", "Seamonkey", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
var communicatorFolder = getFolder("Program");
logComment("communicatorFolder: " + communicatorFolder);
err = addDirectory("Program",
@ -13,17 +13,13 @@ err = addDirectory("Program",
logComment("addDirectory() returned: " + err);
// delete the component registry
var ignoreErr = fileDelete(communicatorFolder + "/component.reg");
logComment("fileDelete() returned: " + ignoreErr);
if (err==SUCCESS || err==REBOOT_NEEDED)
if (err==SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
{
abortInstall();
logComment("abortInstall() returned: " + err);
cancelInstall(err);
logComment("cancelInstall() returned: " + err);
}

View File

@ -10,7 +10,7 @@ function createShortcuts()
var winreg;
var fWindows;
var fTemp;
var fCommunicator;
var fProgram;
var fileExe;
var scExeDesc;
var scProfileDesc;
@ -24,8 +24,8 @@ function createShortcuts()
winreg = getWinRegistry();
fWindows = getFolder("Windows");
fCommunicator = getFolder("Communicator");
fTemp = fCommunicator + "$MainExeFile$";
fProgram = getFolder("Program");
fTemp = fProgram + "$MainExeFile$";
fileExe = getFolder("file:///", fTemp);
scExeDesc = "$ProductName$";
scProfileDesc = "Profile Manager";
@ -109,16 +109,16 @@ function createShortcuts()
logComment("fileExe : " + fileExe);
logComment("fFolderPath : " + fFolderPath);
logComment("scExeDesc : " + scExeDesc);
logComment("fCommunicator : " + fCommunicator);
logComment("fProgram : " + fProgram);
/* explicitly create the fFolderPath even though the windowsShortcut function creates the folder.
* This is so that the folder creation gets logged for uninstall to remove it. */
File.dirCreate(fFolderPath);
/* create the shortcuts */
File.windowsShortcut(fileExe, fFolderDesktop, scExeDesc, fCommunicator, "", fileExe, 0);
File.windowsShortcut(fileExe, fFolderPath, scExeDesc, fCommunicator, "", fileExe, 0);
File.windowsShortcut(fileExe, fFolderPath, scProfileDesc, fCommunicator, scProfileDescParam, fileExe, 0);
File.windowsShortcut(fileExe, fFolderDesktop, scExeDesc, fProgram, "", fileExe, 0);
File.windowsShortcut(fileExe, fFolderPath, scExeDesc, fProgram, "", fileExe, 0);
File.windowsShortcut(fileExe, fFolderPath, scProfileDesc, fProgram, scProfileDescParam, fileExe, 0);
// File.windowsShortcut(fileExe, fFolderPath, "Test Http", "", "", "http://sweetlou/products/client/temp/ssu", 0);
/* set the Program Folder Path in the Mozilla key in the Windows Registry */
@ -181,18 +181,18 @@ function updateWinReg()
winreg.createKey(subkey,"");
valname = "Install Directory";
value = fCommunicator;
value = fProgram;
err = winreg.setValueString(subkey, valname, value);
// set the App Paths key here
subkey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\App Paths\\$MainExeFile$";
winreg.createKey(subkey,"");
valname = "";
value = fCommunicator + "$MainExeFile$";
value = fProgram + "$MainExeFile$";
err = winreg.setValueString(subkey, valname, value);
valname = "Path";
value = fCommunicator;
value = fProgram;
err = winreg.setValueString(subkey, valname, value);
}
}
@ -200,52 +200,68 @@ function updateWinReg()
// main
var srDest;
var err;
var fCommunicator;
var fProgram;
var fWindowsSystem;
var fileComponentRegStr;
var fileComponentReg;
srDest = $SpaceRequired$:bin;
err = startInstall("$ProductName$", "Browser", "$Version$");
logComment("startInstall: " + err);
err = initInstall("$ProductName$", "Browser", "$Version$");
logComment("initInstall: " + err);
fCommunicator = getFolder("Communicator");
fProgram = getFolder("Program");
fWindowsSystem = getFolder("Win System");
logComment("fCommunicator: " + fCommunicator);
logComment("fProgram: " + fProgram);
if(verifyDiskSpace(fCommunicator, srDest) == true)
if(verifyDiskSpace(fProgram, srDest) == true)
{
setPackageFolder(fCommunicator);
setPackageFolder(fProgram);
err = addDirectory("",
"$Version$",
"bin", // dir name in jar to extract
fCommunicator, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fCommunicator
fProgram, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fProgram
true); // Force Flag
logComment("addDirectory() of Program returned: " + err);
// check return value
if(!checkError(err))
if( err == SUCCESS )
{
fileComponentRegStr = fCommunicator + "component.reg";
fileComponentReg = getFolder("file:///", fileComponentRegStr);
err = fileDelete(fileComponentReg);
logComment("fileDelete() returned: " + err);
updateWinReg();
createShortcuts();
// we don't want to fail on errors for the above two
resetError();
// register chrome
var ctype = (CONTENT | DELAYED_CHROME);
var cf = getFolder("Chrome");
registerChrome(ctype, getFolder(cf,"packages/core"));
registerChrome(ctype, getFolder(cf,"packages/widget-toolkit"));
registerChrome(SKIN | DELAYED_CHROME, getFolder(cf,"skins/modern"));
registerChrome(LOCALE | DELAYED_CHROME, getFolder(cf,"locales/en-US"));
/* Log the .dat files that are created post install so it can be uninstalled.
* Since the components folder gets created (and therefore logged) during finalize
* we need to log its creation here before the xpti files so it will get removed
* if the xpti files were the last files in the folder */
logComment("Create Folder: " + fCommunicator + "components");
logComment("Installing: " + fCommunicator + "components\\xpti.dat");
logComment("Installing: " + fCommunicator + "components\\xptitemp.dat");
logComment("Create Folder: " + fProgram + "components");
logComment("Installing: " + fProgram + "components\\xpti.dat");
logComment("Installing: " + fProgram + "components\\xptitemp.dat");
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = getLastError();
if (err == SUCCESS)
{
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
cancelInstall(err);
}
else
cancelInstall(err);
}
else
cancelInstall(INSUFFICIENT_DISK_SPACE);
// end main

View File

@ -0,0 +1,22 @@
var err = initInstall("Chatzilla v0.5", "Chatzilla", "$Version$");
logComment("initInstall: " + err);
addFile("Chatzilla service",
"bin/components/chatzilla-service.js",
getFolder("Components"),
"");
var fChat = getFolder("Chrome","packages/chatzilla");
addDirectory("",
"bin/chrome/packages/chatzilla", // jar source folder
fChat, // target folder
""); // target subdir
registerChrome(PACKAGE | DELAYED_CHROME, fChat);
err = getLastError();
if (err==SUCCESS)
performInstall();
else
cancelInstall(err);

View File

@ -142,6 +142,7 @@ C0=Component0
C1=Component1
C2=Component2
C3=Component3
C4=Component4
[Setup Type2]
Description Short=C&ustom
@ -156,6 +157,7 @@ C0=Component0
C1=Component1
C2=Component2
C3=Component3
C4=Component4
;[Setup Type3]
;Description Short=C&ustom
@ -168,6 +170,7 @@ C3=Component3
;C1=Component1
;C2=Component2
;C3=Component3
;C4=Component4
[Dialog Select Components]
Show Dialog=TRUE
@ -333,6 +336,26 @@ Parameter=
Domain0=$Domain$
Server Path0=$ServerPath$
[Component4]
Description Short=Chatzilla
Description Long=Chatzilla IRC client
Archive=chatzilla.xpi
$InstallSize$:chatzilla
$InstallSizeSystem$
$InstallSizeArchive$:chatzilla.xpi
;Dependency0=
; Attributes can be the following values:
; SELECTED - the component is selected to be installed by default.
; INVISIBLE - the component is not shown in the Select Components dialog.
Attributes=SELECTED
Parameter=
; url keys can be as many as needed. url0 is attempted first. if it fails,
; the next url key is tried in sequential order.
; The url should not contain the filename. Setup will assemble the complete url
; using the url keys and the Archive key.
Domain0=$Domain$
Server Path0=$ServerPath$
[Core]
Source=[XPI PATH]\xpcom.xpi
Destination=[WIZTEMP]\xpcom.ns

View File

@ -1,5 +1,5 @@
var err = startInstall("Mozilla Editor", "Seamonkey", "$Version$");
logComment("startInstall: " + err);
var err = initInstall("Mozilla Editor", "Seamonkey", "$Version$");
logComment("initInstall: " + err);
var communicatorFolder = getFolder("Communicator");
logComment("communicatorFolder: " + communicatorFolder);
@ -13,6 +13,6 @@ err = addDirectory("Program",
logComment("addDirectory() returned: " + err);
err = finalizeInstall();
logComment("FinalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);

View File

@ -1,34 +1,41 @@
// main
var srDest;
var err;
var fCommunicator;
var fProgram;
srDest = $SpaceRequired$:bin;
err = startInstall("Mozilla Mail", "Mail", "$Version$");
logComment("startInstall: " + err);
// check return value
checkError(err);
err = initInstall("Mozilla Mail", "Mail", "$Version$");
logComment("initInstall: " + err);
fCommunicator = getFolder("Communicator");
logComment("fCommunicator: " + fCommunicator);
fProgram = getFolder("Program");
logComment("fProgram: " + fProgram);
if(verifyDiskSpace(fCommunicator, srDest) == true)
if(verifyDiskSpace(fProgram, srDest) == true)
{
setPackageFolder(fCommunicator);
setPackageFolder(fProgram);
err = addDirectory("",
"$Version$",
"bin", // dir name in jar to extract
fCommunicator, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fCommunicator
fProgram, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fProgram
true); // Force Flag
logComment("addDirectory() returned: " + err);
// register chrome
err = registerChrome(CONTENT | DELAYED_CHROME,
getFolder("Chrome","packages/messenger"));
logComment("registerChrome() returned: "+err);
// check return value
if(!checkError(err))
if(err == SUCCESS)
{
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
cancelInstall(err);
}
else
cancelInstall(INSUFFICIENT_DISK_SPACE);
// end main

View File

@ -102,11 +102,13 @@ else
MakeJsFile("xpcom");
MakeJsFile("browser");
MakeJsFile("mail");
MakeJsFile("chatzilla");
# Make .xpi files
MakeXpiFile("xpcom");
MakeXpiFile("browser");
MakeXpiFile("mail");
MakeXpiFile("chatzilla");
MakeUninstall();
MakeConfigFile();

View File

@ -28,7 +28,7 @@ function updateWinReg()
winreg.createKey(subkey,"");
valname = "Install Directory";
value = fCommunicator;
value = fProgram;
err = winreg.setValueString(subkey, valname, value);
subkey = "SOFTWARE\\$CompanyName$\\$ProductName$\\$UserAgent$\\Uninstall";
@ -48,7 +48,7 @@ function updateWinReg()
var srDest;
var err;
var szUninstall;
var fCommunicator;
var fProgram;
var fWindowsSystem;
var fileTemp;
var fileComponentReg;
@ -57,33 +57,33 @@ var fileMsvcrt;
var fileMsvcirt;
srDest = $SpaceRequired$:bin;
err = startInstall("Mozilla XPCom", "XPCom", "$Version$");
logComment("startInstall: " + err);
err = initInstall("Mozilla XPCom", "XPCom", "$Version$");
logComment("initInstall: " + err);
fCommunicator = getFolder("Communicator");
fProgram = getFolder("Program");
fWindowsSystem = getFolder("Win System");
logComment("fCommunicator: " + fCommunicator);
logComment("fProgram: " + fProgram);
// build the uninstall folder path
szUninstall = fCommunicator + "Uninstall";
szUninstall = fProgram + "Uninstall";
// Log component.reg file so it can be deleted by the uninstaller.
// These two files are created after installation is done, thus
// are normally not logged for uninstall.
logComment("Installing: " + fCommunicator + "component.reg");
logComment("Installing: " + fProgram + "component.reg");
if(verifyDiskSpace(fCommunicator, srDest) == true)
if(verifyDiskSpace(fProgram, srDest) == true)
{
setPackageFolder(fCommunicator);
setPackageFolder(fProgram);
err = addDirectory("",
"$Version$",
"bin", // dir name in jar to extract
fCommunicator, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fCommunicator
fProgram, // Where to put this file (Returned from GetFolder)
"", // subdir name to create relative to fProgram
true); // Force Flag
logComment("addDirectory() of Program returned: " + err);
if(!checkError(err))
if( err == SUCCESS )
{
// install msvcrt.dll *only* if it does not exist
// we don't care if addFile() fails (if the file does not exist in the archive)
@ -99,7 +99,7 @@ if(verifyDiskSpace(fCommunicator, srDest) == true)
"$Version$",
"msvcrt.dll", // dir name in jar to extract
fWindowsSystem, // Where to put this file (Returned from getFolder)
"", // subdir name to create relative to fCommunicator
"", // subdir name to create relative to fProgram
WIN_SHARED_FILE);
logComment("addFile() of msvcrt.dll returned: " + err);
}
@ -122,7 +122,7 @@ if(verifyDiskSpace(fCommunicator, srDest) == true)
"$Version$",
"msvcirt.dll", // dir name in jar to extract
fWindowsSystem, // Where to put this file (Returned from getFolder)
"", // subdir name to create relative to fCommunicator
"", // subdir name to create relative to fProgram
WIN_SHARED_FILE);
logComment("addFile() of msvcirt.dll returned: " + err);
}
@ -133,19 +133,19 @@ if(verifyDiskSpace(fCommunicator, srDest) == true)
}
// check return value
if(!checkError(err))
if( err == SUCCESS )
{
fileComponentRegStr = fCommunicator + "component.reg";
fileComponentReg = getFolder("file:///", fileComponentRegStr);
err = fileDelete(fileComponentReg);
logComment("fileDelete() returned: " + err);
updateWinReg();
err = finalizeInstall();
logComment("finalizeInstall() returned: " + err);
err = performInstall();
logComment("performInstall() returned: " + err);
}
else
cancelInstall(err);
}
else
cancelInstall(INSUFFICIENT_DISK_SPACE);
// end main