📄 registry.rul
字号:
// $Id: registry.rul,v 1.33 1999/04/29 22:46:42 philipn Exp $
//____________________________________________________________________________
// Copyright (C) 1998 Pretty Good Privacy, Inc.
// All rights reserved.
//
// Author: Philip Nathan
//____________________________________________________________________________
///////////////////////////////////////////////////////////////////////////////
//
// Function: SetupRegistry
//
// Purpose: This function makes the registry entries for this setup.
//
///////////////////////////////////////////////////////////////////////////////
function SetupRegistry()
NUMBER nResult, nvResult, nvType, AsciNum, nvSize;
NUMBER nvPathLen, nType, IndexNumber, Index;
STRING svResult, szKey, szLocalDB, szValue, szName;
STRING svTarget, svNetTarget, KeyStub, svValue, szInsertLine;
begin
// Add all registry entry keys here.
svTarget = TARGETDIR;
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
GetSystemInfo (DATE, nvResult, svResult);
//This is cleanup for PGP6.5 bug
RegDBDeleteKey ("HKEY_LOCAL_MACHINE\\SOFTWARE\\Network Associates\\PGP");
RegDBSetKeyValueEx
("SOFTWARE\\Network Associates\\PGP","Version",
REGDB_STRING, PRODUCT_VERSION,-1);
//If this is a client install set the Date entry
if (bImAdminInstall = TRUE) then
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
GetSystemInfo (DATE, nvResult, svResult);
RegDBSetKeyValueEx
("SOFTWARE\\Network Associates\\PGP","InstallDate",
REGDB_STRING, svResult,-1);
endif;
//PGPnet Entries
if (ComponentIsItemSelected(MEDIA,"PGPnet") = TRUE) then
VarSave(SRCTARGETDIR);
SRCDIR = TARGETDIR;
LongPathToShortPath (TARGETDIR);
szInsertLine = "StartDetachedProcess ExitCode \"\" \"\" " + TARGETDIR ^ "SetAdapter.exe delreg";
FileInsertLine ( "PGPRebind.inf" , szInsertLine , 2 , AFTER );
VarRestore(SRCTARGETDIR);
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
szLocalDB = "SOFTWARE\\Network Associates";
RegDBSetKeyValueEx (szLocalDB ^ "PGP\\PGPnet" ,"InstallPath",REGDB_STRING,svTarget,-1);
svNetTarget = svTarget;
//Ensure no old cancelled entry exists
RegDBDeleteValue (szLocalDB ^ "PGP\\PGPnet" , "PGPnetCancelled");
//Launch the lister for card selection
LongPathToShortPath (svNetTarget);
ChangeDirectory(svNetTarget);
if (bEasyInstall) then
LaunchAppAndWait (svNetTarget ^ "SetAdapter.exe","installs", WAIT);
else
LaunchAppAndWait (svNetTarget ^ "SetAdapter.exe","install", WAIT);
endif;
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
if (RegDBGetKeyValueEx (szLocalDB ^ "PGP\\PGPnet" , "PGPnetCancelled" , nvType , svValue , nvSize )<0) then
//Set service entries(IkeService writes them)
//-i writes -u removes.
if ((bIsWindows95)||(bIsWindows98)) then
/*service entry for pgpike95*/
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
szLocalDB = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\RunServices";
RegDBSetKeyValueEx (szLocalDB ,"IKEService95",REGDB_STRING,svTarget ^ "IKEService.exe",-1);
else
LaunchApp(svTarget ^ "IKEservice.exe","-i");
endif;
else
//PGPnet Lister was cancelled by the user
UninstallPGPnet (svTarget);
ComponentSelectItem(MEDIA,"PGPnet",FALSE);
endif;
endif;
//If this is NT set the PGPmemlock entries
if (bIsWindowsNT4 = TRUE) then
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
szKey = "SYSTEM\\CurrentControlSet\\Services\\PGPmemlock";
RegDBSetKeyValueEx (szKey ,"ErrorControl",REGDB_NUMBER,"1",-1);
RegDBSetKeyValueEx (szKey ,"Type",REGDB_NUMBER,"1",-1);
RegDBSetKeyValueEx (szKey ,"Start",REGDB_NUMBER,"2",-1);
RegDBSetKeyValueEx (szKey ,"DisplayName",REGDB_STRING,"PGP secure memory driver",-1);
endif;
//set reg. key to remove shared files (SDK)
if (ComponentIsItemSelected( MEDIA , "SDK" ) = TRUE) then
RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE);
szLocalDB = "\\SOFTWARE" ^ "Network Associates";
RegDBSetKeyValueEx
(szLocalDB ^ @REGAPP_NAME,"DelSharedFiles",REGDB_STRING,"1",-1);
endif;
//This is old 4.5 check
nvType = REGDB_STRING;
RegDBSetDefaultRoot(HKEY_CURRENT_USER);
if (RegDBGetKeyValueEx("Software\\PGP\\PNDetect\\Modules","PGP Plugin"
,nvType,szEudoraPath,nvPathLen) = 0) then
if (bEasyInstall = FALSE) then
// ask if they want to remove the 4.5 plugin
SetDialogTitle
(DLG_ASK_YESNO,"Disable the PGPmail 4.5 Eudora/Netscape Plugin?");
if (AskYesNo
("Do you wish to disable the PGPmail 4.5 Eudora/Netscape Plugin?"
,YES) = YES) then
RegDBDeleteValue
("Software\\PGP\\PNDetect\\Modules","PGP Plugin");
endif;
else
RegDBDeleteValue
("Software\\PGP\\PNDetect\\Modules","PGP Plugin");
endif;
endif;
//These are the PGPdisk entries
if (ComponentIsItemSelected(MEDIA,"PGPdisk") = TRUE) then
//SETTING WINDOWS 95 SPECIFIC REGISTRY VALUES
if (bIsWindowsNT4 = FALSE) then
RegDBSetDefaultRoot (HKEY_LOCAL_MACHINE);
szKey = "Enum\\Root\\PGPdisk\\0000";
szName = "Class";
nType = REGDB_STRING;
szValue = "PGPdisk";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "ConfigFlags";
nType = REGDB_BINARY;
szValue = "";
for Index = 0 to 3
AsciNum = 0;
if (Index = 0) then
AsciNum = 4;
endif;
SetByte (szValue, Index, AsciNum);
endfor;
RegDBSetKeyValueEx (szKey, szName, nType, szValue, 4);
szName = "DeviceDesc";
nType = REGDB_STRING;
szValue = "PGPdisk Volume Driver";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "Driver";
nType = REGDB_STRING;
szValue = "PGPdisk\\0000";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "ForcedConfig";
nType = REGDB_BINARY;
szValue = "";
for Index = 0 to 11
AsciNum = 0;
if (Index = 1) then
AsciNum = 4;
endif;
SetByte (szValue, Index, AsciNum);
endfor;
RegDBSetKeyValueEx (szKey, szName, nType, szValue, 12);
szName = "HardwareID";
nType = REGDB_STRING;
szValue = "*PGPdisk";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "Mfg";
nType = REGDB_STRING;
szValue = "Network Associates, Inc.";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "Enum\\Root\\PGPdisk\\0000\\LogConfig";
szName = "0";
nType = REGDB_BINARY;
szValue = "";
for Index = 0 to 11
AsciNum = 0;
if (Index = 1) then
AsciNum = 4;
endif;
if (Index = 5) then
AsciNum = 224;
endif;
SetByte (szValue, Index, AsciNum);
endfor;
RegDBSetKeyValueEx (szKey, szName, nType, szValue, 12);
szKey = "System\\CurrentControlSet\\Services\\Class\\PGPdisk";
szName = "";
nType = REGDB_STRING;
szValue = "PGPdisk Volume Driver";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "Icon";
nType = REGDB_STRING;
szValue = "-9";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "System\\CurrentControlSet\\Services\\Class\\PGPdisk\\0000";
szName = "DevLoader";
nType = REGDB_STRING;
szValue = "*IOS";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "DriverDesc";
nType = REGDB_STRING;
szValue = "PGPdisk Volume Driver";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "PortDriver";
nType = REGDB_STRING;
szValue = "PGPDISK.pdr";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
// NT SPECIFIC ENTRIES
else
RegDBSetDefaultRoot (HKEY_LOCAL_MACHINE);
szKey = "System\\CurrentControlSet\\Services\\PGPdisk";
szName = "Type";
nType = REGDB_NUMBER;
szValue = "1";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "Start";
nType = REGDB_NUMBER;
szValue = "2";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "ErrorControl";
nType = REGDB_NUMBER;
szValue = "1";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "Group";
nType = REGDB_STRING;
szValue = "Extended Base";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "System\\CurrentControlSet\\Services\\EventLog\\System\\PGPdisk";
szName = "EventMessageFile";
nType = REGDB_STRING;
szValue = WINSYSDIR ^ "Drivers" ^ "PGPdisk.sys";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "TypesSupprted";
nType = REGDB_NUMBER;
szValue = "7";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
endif;
//
//SETTING WINDOWS 95 / WINDOWS NT COMMON REGISTRY VALUES
//HKEY_CLASSES_ROOT
//
RegDBSetDefaultRoot (HKEY_CLASSES_ROOT);
szKey = ".pgd";
szName = "";
nType = REGDB_STRING;
szValue = "PGPdisk Volume";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = ".pgd\\ShellNew";
szName = "Command";
nType = REGDB_STRING;
LongPathToShortPath (svTarget);
szValue = svTarget ^ "PGPDISK.EXE create \"%2\"";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "PGPdisk Volume";
szName = "";
nType = REGDB_STRING;
szValue = "PGPdisk Volume";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "PGPdisk Volume\\DefaultIcon";
szName = "";
nType = REGDB_STRING;
szValue = svTarget ^ "PGPDISK.EXE,5";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "PGPdisk Volume\\shell\\open\\command";
szName = "";
nType = REGDB_STRING;
szValue = svTarget ^ "PGPDISK.EXE open \"%1\"";
//LongPathToShortPath (szValue);
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "CLSID\\{F8B14440-3785-11D1-B363-5C6F08C10000}";
szName = "";
nType = REGDB_STRING;
szValue = "PGPdisk Shell Extension";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "CLSID\\{F8B14440-3785-11D1-B363-5C6F08C10000}\\InProcServer32";
szName = "";
nType = REGDB_STRING;
szValue = "PGPdskSE.dll";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szName = "ThreadingModel";
nType = REGDB_STRING;
szValue = "Apartment";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "PGPdisk Volume\\shellex\\ContextMenuHandlers\\PGPdisk Shell Extension";
szName = "";
nType = REGDB_STRING;
szValue = "{F8B14440-3785-11D1-B363-5C6F08C10000}";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
szKey = "Drive\\shellex\\ContextMenuHandlers\\PGPdisk Shell Extension";
szName = "";
nType = REGDB_STRING;
szValue = "{F8B14440-3785-11D1-B363-5C6F08C10000}";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
//HKEY_LOCAL_MACHINE
RegDBSetDefaultRoot (HKEY_LOCAL_MACHINE);
szKey = "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Shell Extensions\\Approved";
szName = "{F8B14440-3785-11D1-B363-5C6F08C10000}";
nType = REGDB_STRING;
szValue = "PGPdisk Shell Extension";
RegDBSetKeyValueEx (szKey, szName, nType, szValue, -1);
//HKEY_LOCAL_MACHINE
RegDBSetDefaultRoot (HKEY_LOCAL_MACHINE);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -