]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
misc-post-1366-20040804
authorAsanka Herath <asanka@mit.edu>
Wed, 4 Aug 2004 17:36:10 +0000 (17:36 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 4 Aug 2004 17:36:10 +0000 (17:36 +0000)
Update documentation on cache control and credential manager options
in MSI deployment guide.

'CachePath' setting in registry allows REG_EXPAND_SZ type.

Update registry documentation for 'CachePath' setting.

Both installers save the credential manager command line options in
registry.

Fix handling of existing 'afsdcell.ini' file in WiX installer.

WiX 2.0.1927 changed the XML schema.  The WiX installer has beed
updated accordingly.

doc/txt/winnotes/msi-deployment-guide.txt
doc/txt/winnotes/registry.txt
src/WINNT/afsd/afsd_init.c
src/WINNT/install/NSIS/OpenAFS.nsi
src/WINNT/install/wix/feature.wxi
src/WINNT/install/wix/files.wxi
src/WINNT/install/wix/openafs.wxs
src/WINNT/install/wix/property.wxi
src/WINNT/install/wix/registry.wxi

index 7bdfb3bba2535fe287196bda140edbeabb9890bc..70c6c27495a1255c388560ded4ddcad983ae5913 100644 (file)
@@ -85,6 +85,16 @@ OpenAFS for Windows
 
     The configurable properties are as follows:
 
+    AFSCACHEPATH
+        Registry key    : (Service parameters)
+        Registry value  : CachePath
+        Valid values    : string
+
+    AFSCACHESIZE
+        Registry key    : (Service parameters)
+        Registry value  : CacheSize
+        Valid values    : numeric
+
     AFSCELLNAME
 
        Registry key    : (Service parameters)
@@ -114,11 +124,19 @@ OpenAFS for Windows
 
        Option for AFSCREDS.EXE.  Enables renewing drive map at
        startup.
+        (see below)
+
+    CREDSSHOW
+        Valid values    : '-s' or ''
 
-       The four properties above determine the behavior of the AFS
+        Option for AFSCREDS.EXE.  Enables displaying the credential
+        manager window when AFSCREDS starts up.
+
+       The five properties above determine the behavior of the AFS
        credential manager ( AFSCREDS.EXE ).  Each property adds a
        command line option to the shortcut that will be created in
-       the Program Menu (both under 'OpenAFS' and 'Startup' folders).
+       the Program Menu, both under 'OpenAFS' and 'Startup' folders
+        (see CREDSSTARTUP).
 
        The way in which the options are specified was chosen for easy
        integration with the Windows Installer user interface.
@@ -126,6 +144,15 @@ OpenAFS for Windows
        options to AFSCREDS.EXE, we advise against it because such
        transforms may not apply to future releases of OpenAFS.
 
+    CREDSSTARTUP
+        Valid values    : '1' or '0'
+
+        Controls whether AFSCREDS.EXE starts up automatically when a
+        user logs on.  When CREDSSTARTUP is '1' a shortcut is added
+        to the 'Startup' folder in the 'Program menu' which starts
+        AFSCREDS.EXE with the options that are determined by the
+        other CREDS* properties.
+
     FREELANCEMODE
 
        Registry key    : (Service parameters)
index 9ace6bba3c9aec401432eddb1382654ebddc6c2a..c762115af699f21ae23cb6c71271cd377af91cf2 100644 (file)
@@ -32,7 +32,7 @@ Type    : QWORD
 Default : 20480 (CM_CONFIGDEFAULT_CACHESIZE)
 Variable: cm_initParams.cacheSize
 
-  Size of the AFS cache.
+  Size of the AFS cache in 1k blocks.
 
 Value   : ChunkSize
 Type    : DWORD
@@ -104,8 +104,8 @@ Variable: cm_mountRoot
   where the symlink exists)
  
 Value  : CachePath
-Type   : REG_SZ
-Default : "\AFSCache"
+Type   : REG_SZ or REG_EXPAND_SZ
+Default : "%SYSTEMDRIVE%\AFSCache"
 Variable: cm_CachePath
 
   Location of on-disk cache file.  The default implies the root 
index a3d36719f99b38074e4bfe5f405082df49984949..96cccf00af4a52ae12a11c8e3202da302674b627 100644 (file)
@@ -378,6 +378,7 @@ int afsd_InitCM(char **reasonP)
        char buf[200];
        HKEY parmKey;
        DWORD dummyLen;
+    DWORD regType;
        long code;
        /*int freelanceEnabled;*/
        WSADATA WSAjunk;
@@ -588,12 +589,21 @@ int afsd_InitCM(char **reasonP)
                /* Don't log */
        }
 
-       dummyLen = sizeof(cm_CachePath);
-       code = RegQueryValueEx(parmKey, "CachePath", NULL, NULL,
-                               cm_CachePath, &dummyLen);
-       if (code == ERROR_SUCCESS)
+       dummyLen = sizeof(buf);
+       code = RegQueryValueEx(parmKey, "CachePath", NULL, &regType,
+                               buf, &dummyLen);
+    if (code == ERROR_SUCCESS && buf[0]) {
+        if(regType == REG_EXPAND_SZ) {
+            dummyLen = ExpandEnvironmentStrings(buf, cm_CachePath, sizeof(cm_CachePath));
+            if(dummyLen > sizeof(cm_CachePath)) {
+                afsi_log("Cache path [%s] longer than %d after expanding env strings", buf, sizeof(cm_CachePath));
+                osi_panic("CachePath too long", __FILE__, __LINE__);
+            }
+        } else {
+            StringCbCopyA(cm_CachePath, sizeof(cm_CachePath), buf);
+        }
                afsi_log("Cache path %s", cm_CachePath);
-       else {
+    } else {
                GetWindowsDirectory(cm_CachePath, sizeof(cm_CachePath));
                cm_CachePath[2] = 0;    /* get drive letter only */
                StringCbCatA(cm_CachePath, sizeof(cm_CachePath), "\\AFSCache");
index 8ed4eca32c375b38a27fa4057afde820fb897562..cdde2e31747c409b6ad27943882b40ab61d11240 100644 (file)
@@ -626,6 +626,8 @@ Section "AFS Client" secClient
   StrCmp $R1 "1" +1 +2
   StrCpy $R2 "$R2-S"
   
+  WriteRegStr HKLM "SOFTWARE\OpenAFS\Client" "AfscredsShortcutParams" "$R2"
+  
   CreateShortCut "$SMPROGRAMS\OpenAFS\Client\Authentication.lnk" "$INSTDIR\Client\Program\afscreds.exe" "$R2"
   
   ReadINIStr $R1 $2 "Field 1" "State"
index 8bfe8ceced506395cec921f33a0d2196dfd9dc87..431741e73262e78e6402074a1229ae4acac966c5 100644 (file)
@@ -31,6 +31,7 @@
                                
                                <Feature Id="feaCredsStartup" AllowAdvertise="no" FollowParent="yes" Display="hidden" InstallDefault="local" Level="30">
                                        <ComponentRef Id="cmp_credsStartup" />
+                                       <Condition Level="130">CREDSSTARTUP = 0</Condition>
                                </Feature>
                                
                        <?ifdef DebugSyms?>
                        <?endif?>
 
                                <ComponentRef Id="rcm_Client" />
+                <ComponentRef Id="rcm_ClientCacheSize" />
+                <ComponentRef Id="rcm_ClientCachePath" />
+
                                <ComponentRef Id="cmp_CommonDir" />
 
                 <ComponentRef Id="efl_Readme_TXT_$(var.Language)" />
                 <ComponentRef Id="efl_CellServDB" />
+                <ComponentRef Id="cpf_CellServDB" />
                 <ComponentRef Id="cmf_afs_cpa_CPL" />
 
                 <ComponentRef Id="cmf_afsrpc_DLL" />
index 8d251de65c66dab336a40348bc91234a1956449c..041187751d73a294a42453295acd50aef3a08bf1 100644 (file)
@@ -1,17 +1,15 @@
 <?xml version="1.0"?>
 <Include>
-    <Directory Id="WindowsFolder">
-    </Directory>
     <Directory Id="SystemFolder">
         <Component Id="cmf_afslogon_DLL" Guid="123197FE-4F53-4035-8D51-FCFB6B50A777">
             <File Id="fileafslogon_DLL" Name="afslogon.dll" LongName="afslogon.dll" KeyPath="yes" DiskId="1" src="$(var.ClientDir)afslogon.dll" />
-            <Registry Id="reg_afslogon01" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="*" />
+            <Registry Id="reg_afslogon01" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Action="createKeyAndRemoveKeyOnUninstall" />
             <Registry Id="reg_afslogon02" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" />
-            <Registry Id="reg_afslogon03" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Asynchronous" Value="0" Type="integer" />
-            <Registry Id="reg_afslogon04" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Impersonate" Value="1" Type="integer" />
-            <Registry Id="reg_afslogon05" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="DLLName" Value="#fileafslogon_DLL" />
-            <Registry Id="reg_afslogon06" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Logoff" Value="AFS_Logoff_Event" />
-            <Registry Id="reg_afslogon07" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Startup" Value="AFS_Startup_Event" />
+            <Registry Id="reg_afslogon03" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Asynchronous" Type="integer" Value="0" />
+            <Registry Id="reg_afslogon04" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Impersonate" Type="integer" Value="1" />
+            <Registry Id="reg_afslogon05" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="DLLName" Type="string" Value="[#fileafslogon_DLL]" />
+            <Registry Id="reg_afslogon06" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Logoff" Type="string" Value="AFS_Logoff_Event" />
+            <Registry Id="reg_afslogon07" Root="HKLM" Key="SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Notify\AfsLogon" Name="Startup" Type="string" Value="AFS_Startup_Event" />
         </Component>
     <?ifdef DebugSyms?>
         <Component Id="cmp_ClientSystemDebug" Guid="DD34DA09-D9DA-4A5A-9521-87B7738A7D53">
             </Directory> <!-- Documentation -->
 
             <Directory Id="dirClient" Name="Client" LongName="Client" SourceName=".">
-                <Component Id="efl_CellServDB" Guid="8E69FDAB-08C5-4927-B1AA-57FCEEB065F2">
+                <Component Id="efl_CellServDB" Guid="8E69FDAB-08C5-4927-B1AA-57FCEEB065F2" NeverOverwrite="yes" Permanent="yes">
                     <File Id="file_CellServDB" Name="CelSrvDB" LongName="CellServDB" KeyPath="yes" DiskId="1" src="$(var.CellDbFile)"/>
-                    <CopyFile Id="copy_CellServDB" Delete="yes" DestinationFolder="dirClient" SourceFolder="WindowsFolder" SourceName="afsdcell.ini" />
+                    <Condition>OLDCELLSERVDB = ""</Condition>
+                </Component>
+                <Component Id="cpf_CellServDB" Guid="D5BA4C15-DBEC-4292-91FC-B54C30F24F2A">
+                                       <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client" Name="CellServDBMoved" Type="integer" Value="1" Id="reg_OldCellDB" KeyPath="yes" />
+                    <CopyFile Id="copy_CellServDB" Delete="yes" DestinationDirectory="dirClient" DestinationName="CellServ|CellServDB" SourceDirectory="WindowsFolder" SourceName="afsdcell.ini" />
+                    <Condition>OLDCELLSERVDB &lt;&gt; ""</Condition>
                 </Component>
                 <Directory Id="dirProgram" Name="Program" LongName="Program" SourceName="." src="$(var.ClientDir)">
                     <Component Id="cmf_afsshare_EXE" Guid="E972DA35-E950-4736-AE48-E6DDCE8C97D0">
                     </Component>
                     <Component Id="cmf_afsd_service_EXE" Guid="37A90054-505D-4C57-B489-7EF4D97B86F6">
                         <File Id="fileafsd_service_EXE" Name="afsd_svc.exe" LongName="afsd_service.exe" KeyPath="yes" DiskId="1" />
-                        <ServiceControl Id="TransarcAFSDaemon" Name="TransarcAFSDaemon" Stop="both" Delete="both" Wait="yes" />
+                        <ServiceControl Id="TransarcAFSDaemon" Name="TransarcAFSDaemon" Stop="both" Remove="both" Wait="yes" />
                         <ServiceInstall Id="svc_Client" Name="TransarcAFSDaemon" DisplayName="OpenAFS Client" Type="ownProcess" Start="auto" ErrorControl="normal" Description="Provides access to files and directories stored in AFS">
                                                        <!-- ServiceConfig doesn't currently do what you think it does.
                                                             We instead use a custom action to set the service failure actions.
                     </Component>
                                        <Component Id="cmf_afs_cpa_CPL" Guid="C83091EC-2967-4AC6-A34D-860CD7FEDA57">
                                                <File Id="fileafs_cpa_CPL" Name="afs_cpa.cpl" LongName="afs_cpa.cpl" KeyPath="yes" DiskId="1"/>
-                                       <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls" Name="AFS Client CPL" Value="[#fileafs_cpa_CPL]" Id="reg_Full_Client11" />
+                                       <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls" Name="AFS Client CPL" Type="string" Value="[#fileafs_cpa_CPL]" Id="reg_Full_Client11" />
                                        </Component>
                 <?ifdef DebugSyms?>
                     <Component Id="cmp_ClientProgramDebug" Guid="A6A394F6-45D0-45A9-A7DD-C0997070EC14">
                             </Component>
                             <Component Id="cmf_bosctlsvc_EXE" Guid="8F6F62A8-BB6D-46C1-BA80-4F207AA24F0D">
                                 <File Id="filebosctlsvc_EXE" Name="bosct.exe" LongName="bosctlsvc.exe" KeyPath="yes" DiskId="1" />
-                                <ServiceControl Id="TransarcAFSServer" Name="TransarcAFSServer" Stop="both" Delete="both" Wait="yes" />
+                                <ServiceControl Id="TransarcAFSServer" Name="TransarcAFSServer" Stop="both" Remove="both" Wait="yes" />
                                 <ServiceInstall Id="svc_Server" Name="TransarcAFSServer" DisplayName="OpenAFS Server" Type="ownProcess" Start="auto" ErrorControl="normal" Description="Manages AFS server processes">
                                                                        <!-- ServiceConfig does nothing 
                                     <ServiceConfig FirstFailureActionType="restart" RestartServiceDelayInSeconds="5" SecondFailureActionType="restart" ThirdFailureActionType="none"/>
                             </Component>
                                                        <Component Id="cmf_afsserver_CPL" Guid="E270281E-9DB2-40A8-A418-55B4EC4A3FE7">
                                                                <File Id="fileafsserver_CPL" Name="afsserve.cpl" LongName="afsserver.cpl" KeyPath="yes" DiskId="1"/>
-                                                       <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls" Name="AFS Server CPL" Value="[#fileafsserver_CPL]" Id="reg_Server30" />
+                                                       <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Control Panel\Cpls" Name="AFS Server CPL" Type="string" Value="[#fileafsserver_CPL]" Id="reg_Server30" />
                                                        </Component>
 
                             <Component Id="cmp_Server_Program" Guid="8C4D0351-8EBF-4192-BF63-DCB3AADF4115" KeyPath="yes">
 
         </Directory> <!-- AFS -->
     </Directory> <!-- program files -->
+    <!-- References -->
     <Directory Id="ProgramMenuFolder" Name=".">
         <Directory Id="dirShortCut" Name="OpenAFS" LongName="OpenAFS"/>
     </Directory>
-    <Directory Id="StartupFolder" Name=".">
-    </Directory>
+    <Directory Id="StartupFolder" Name="." />
+    <Directory Id="WindowsVolume" Name="." />
+    <Directory Id="WindowsFolder" Name="." />
 </Include>
index dc4eb00ff5c906babdb8b56b4c99b8811980861e..df94cd5058240be11d4bc99fb4d6dc8d7707f840 100644 (file)
@@ -23,6 +23,7 @@
                         Id="$(var.PackageCode)"
                -->
         <Package
+                Id="????????-????-????-????-????????????"
          AdminImage="no"
          Comments="$(var.PackageComments)"
          Compressed="yes"
index 48daeb96f3830a2c093c4893095184223ef9d105..6dfea7db4ae90ebd1cdd8245de0377a5a7ed3d01 100644 (file)
        <!-- empty property 
        <Property Id="CREDSSHOW"></Property>
        -->
+       <!-- empty property
+       <Property Id="AFSCACHEPATH"></Property>
+       -->
+       <!-- empty property
+       <Property Id="AFSCACHESIZE"></Property>
+       -->
 
     <!-- Add/remove programs -->
     <Property Id="ARPCOMMENTS">$(var.ProductComments)</Property>
     
     <Property Id="ABORTREASON">$(loc.StrNsisAbortReason)</Property>
 
+    <Property Id="OLDCELLSERVDB">
+      <DirectorySearch Id="dsOldCellServDB" Path="[WindowsFolder]" >
+        <FileSearch Id="fsOldCellServDB" Name="afsdcell.ini" />
+      </DirectorySearch>
+    </Property>
+
 </Include>
index 609e898174d2a14b1ecca407de68bd9c63244128..9266497db0389104957e1bbbeccd0de4194e0aeb 100644 (file)
@@ -4,84 +4,88 @@
     This file will be included as a child of the root Directory tag.
     -->
     <Component Id="rcm_Server" Guid="D30C980B-8284-49DF-88F5-C90BBFB3E80D">
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\EventLog\Application\AFS Service" Name="*" Id="reg_Server"/>
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\EventLog\Application\AFS Service" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Server"/>
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\EventLog\Application\AFS Service" Id="reg_Server3"/>
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\EventLog\Application\AFS Service" Name="TypesSupported" Type="integer" Value="7" Id="reg_Server4" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="*" Id="reg_Server5" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Server5" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Server6" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Id="reg_Server7" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Server8" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Server9" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Server10" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="Software Type" Value="File System" Id="reg_Server11" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="PathName" Value="[AFSDIR]Server" Id="reg_Server12" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Server13" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Server15" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="Description" Value="$(loc.StrAFSServerDesc)" Id="reg_Server16" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="*" Id="reg_Server18" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Server10" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="Software Type" Type="string" Value="File System" Id="reg_Server11" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="PathName" Type="string" Value="[AFSDIR]Server" Id="reg_Server12" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Server13" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Server15" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\$(var.NumericVersion)" Name="Description" Type="string" Value="$(loc.StrAFSServerDesc)" Id="reg_Server16" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Server18" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Server19" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Id="reg_Server20" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Server21" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Server22" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Server23" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="Software Type" Value="File System" Id="reg_Server24" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="PathName" Value="[AFSDIR]Server" Id="reg_Server25" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Server26" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Server28" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="Description" Value="$(loc.StrAFSServerDesc)" Id="reg_Server29" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server" Name="*" Id="reg_Server31"/>
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Server23" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="Software Type" Type="string" Value="File System" Id="reg_Server24" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="PathName" Type="string" Value="[AFSDIR]Server" Id="reg_Server25" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Server26" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Server28" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server\CurrentVersion" Name="Description" Type="string" Value="$(loc.StrAFSServerDesc)" Id="reg_Server29" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Server31"/>
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Server" Id="reg_Server32" KeyPath="yes"/>
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\EventLog\Application\AFS Service" Name="EventMessageFile" Value="[AFSDIR]Common\afseventmsg_$(var.LanguageCode).dll" Id="reg_Server_$(var.LanguageCode)" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\EventLog\Application\AFS Service" Name="EventMessageFile" Type="string" Value="[AFSDIR]Common\afseventmsg_$(var.LanguageCode).dll" Id="reg_Server_$(var.LanguageCode)" />
     </Component>
 
     <Component Id="rcm_Control_Center" Guid="2007844F-E101-4C99-81F5-EF9AEAD98821">
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center" KeyPath="yes" Id="reg_Control_Center2" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center" Name="*" Id="reg_Control_Center" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="*" Id="reg_Control_Center3" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Control_Center" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Control_Center3" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Control_Center4" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Id="reg_Control_Center5" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Control_Center6" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Control_Center7" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Control_Center8" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="Software Type" Value="File System" Id="reg_Control_Center9" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="PathName" Value="[AFSDIR]Control Center" Id="reg_Control_Center10" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Control_Center11" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Control_Center13" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="Description" Value="$(loc.StrAFSCCDesc)" Id="reg_Control_Center14" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="*" Id="reg_Control_Center16" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Control_Center8" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="Software Type" Type="string" Value="File System" Id="reg_Control_Center9" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="PathName" Type="string" Value="[AFSDIR]Control Center" Id="reg_Control_Center10" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Control_Center11" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Control_Center13" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\CurrentVersion" Name="Description" Type="string" Value="$(loc.StrAFSCCDesc)" Id="reg_Control_Center14" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Control_Center16" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Control_Center17" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Id="reg_Control_Center18" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Control_Center19" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Control_Center20" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Control_Center21" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="Software Type" Value="File System" Id="reg_Control_Center22" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="PathName" Value="[AFSDIR]Control Center" Id="reg_Control_Center23" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Control_Center24" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Control_Center26" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="Description" Value="$(loc.StrAFSCCDesc)" Id="reg_Control_Center27" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Control_Center21" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="Software Type" Type="string" Value="File System" Id="reg_Control_Center22" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="PathName" Type="string" Value="[AFSDIR]Control Center" Id="reg_Control_Center23" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Control_Center24" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Control_Center26" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Control Center\$(var.NumericVersion)" Name="Description" Type="string" Value="$(loc.StrAFSCCDesc)" Id="reg_Control_Center27" />
     </Component>
     <Component Id="rcm_Client" Guid="954679B0-547B-4F1E-9A3A-ABFB15B6C724">
         <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" Id="reg_Client_NoUninstall2" />
-        <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" Name="+" Id="reg_Client_NoUninstall" />
-        <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" Name="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Value="$(loc.StrShlExtDesc)" Id="reg_Client_NoUninstall3" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client" Name="*" Id="reg_Client" />
+        <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" Action="createKey" Id="reg_Client_NoUninstall" />
+        <Registry Root="HKLM" Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved" Name="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Type="string" Value="$(loc.StrShlExtDesc)" Id="reg_Client_NoUninstall3" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client" Id="reg_Client2" KeyPath="yes" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="*" Id="reg_Client5" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client5" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Client6" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Id="reg_Client7" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Client8" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Client9" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Client10" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="Software Type" Value="File System" Id="reg_Client11" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="PathName" Value="[AFSDIR]Client" Id="reg_Client12" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Client13" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="Title" Id="reg_Client15" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Client16" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="Description" Value="$(loc.StrAFSClientDesc)" Id="reg_Client17" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Client10" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="Software Type" Type="string" Value="File System" Id="reg_Client11" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="PathName" Type="string" Value="[AFSDIR]Client" Id="reg_Client12" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Client13" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Client16" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\CurrentVersion" Name="Description" Type="string" Value="$(loc.StrAFSClientDesc)" Id="reg_Client17" />
+        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client" Action="createKey" Id="reg_Client50" />
+        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client\CSCPolicy" Action="createKey" Id="reg_Client51" />
+        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client\Freelance" Action="createKey" Id="reg_Client52" />
+        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client\Submounts" Action="createKey" Id="reg_Client53" />
+        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client" Name="AfscredsShortcutParams" Type="string" Value="[CREDSAUTOINIT] [CREDSRENEWDRMAP] [CREDSIPCHDET] [CREDSQUIET] [CREDSSHOW]" Id="reg_Client54" />
         <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client" Name="ShowTrayIcon" Type="integer" Value="1" Id="reg_Client18" />
-        <Registry Root="HKCR" Key="*\shellex\ContextMenuHandlers\AFS Client Shell Extension" Name="*" Id="reg_Client19" />
-        <Registry Root="HKCR" Key="*\shellex\ContextMenuHandlers\AFS Client Shell Extension" Value="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Id="reg_Client20" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="*" Id="reg_Client21" />
+        <Registry Root="HKCR" Key="*\shellex\ContextMenuHandlers\AFS Client Shell Extension" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client19" />
+        <Registry Root="HKCR" Key="*\shellex\ContextMenuHandlers\AFS Client Shell Extension" Type="string" Value="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Id="reg_Client20" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client21" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="AuthentProviderPath" Type="expandable" Value="[SystemFolder]afslogon.dll" Id="reg_Client22" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Id="reg_Client23" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="LogonOptions" Type="integer" Value="[LOGONOPTIONS]" Id="reg_Client24" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="ProviderPath" Type="expandable" Value="[SystemFolder]afslogon.dll" Id="reg_Client26" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="LogonScript" Type="expandable" Value="[AFSDIR]Client\Program\afscreds.exe -:%s -x -a -m -n -q" Id="reg_Client27" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="Class" Type="integer" Value="2" Id="reg_Client29" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="Name" Value="TransarcAFSDaemon" Id="reg_Client30" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="*" Id="reg_Client31" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\NetworkProvider" Name="Name" Type="string" Value="TransarcAFSDaemon" Id="reg_Client30" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client31" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Client32" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Id="reg_Client33" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Client34" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Client35" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Client36" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="Software Type" Value="File System" Id="reg_Client37" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="PathName" Value="[AFSDIR]Client" Id="reg_Client38" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Client39" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="Title" Id="reg_Client41" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Client42" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="Description" Value="$(loc.StrAFSClientDesc)" Id="reg_Client43" />
-        <Registry Root="HKCR" Key="FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension" Name="*" Id="reg_Client45" />
-        <Registry Root="HKCR" Key="FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension" Value="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Id="reg_Client46" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="*" Id="reg_Client47" />
-        <Registry Root="HKCR" Key="DIRECTORY\shellex\ContextMenuHandlers\AFS Client Shell Extension" Name="*" Id="reg_Client48" />
-        <Registry Root="HKCR" Key="DIRECTORY\shellex\ContextMenuHandlers\AFS Client Shell Extension" Value="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Id="reg_Client49" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="*" Id="reg_Full_Client" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Client36" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="Software Type" Type="string" Value="File System" Id="reg_Client37" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="PathName" Type="string" Value="[AFSDIR]Client" Id="reg_Client38" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Client39" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Client42" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Client\$(var.NumericVersion)" Name="Description" Type="string" Value="$(loc.StrAFSClientDesc)" Id="reg_Client43" />
+        <Registry Root="HKCR" Key="FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client45" />
+        <Registry Root="HKCR" Key="FOLDER\shellex\ContextMenuHandlers\AFS Client Shell Extension" Type="string" Value="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Id="reg_Client46" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client47" />
+        <Registry Root="HKCR" Key="DIRECTORY\shellex\ContextMenuHandlers\AFS Client Shell Extension" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Client48" />
+        <Registry Root="HKCR" Key="DIRECTORY\shellex\ContextMenuHandlers\AFS Client Shell Extension" Type="string" Value="{DC515C27-6CAC-11D1-BAE7-00C04FD140D2}" Id="reg_Client49" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Full_Client" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="HideDotFiles" Type="integer" Value="[HIDEDOTFILES]" Id="reg_Full_Client2" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Id="reg_Full_Client3" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="IsGateway" Type="integer" Value="0" Id="reg_Full_Client4" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="RxMaxMTU" Type="integer" Value="[RXMAXMTU]" Id="reg_Full_Client5" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="NetbiosName" Value="[NETBIOSNAME]" Id="reg_Full_Client6" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="Cell" Value="[AFSCELLNAME]" Id="regAFSCellName" />
-        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="MountRoot" Value="[MOUNTROOT]" Id="reg_Full_Client7" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="NetbiosName" Type="string" Value="[NETBIOSNAME]" Id="reg_Full_Client6" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="Cell" Type="string" Value="[AFSCELLNAME]" Id="regAFSCellName" />
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="MountRoot" Type="string" Value="[MOUNTROOT]" Id="reg_Full_Client7" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="NoFindLanaByName" Type="integer" Value="[NOFINDLANABYNAME]" Id="reg_Full_Client8" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="FreelanceClient" Type="integer" Value="[FREELANCEMODE]" Id="reg_Full_Client9" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="UseDNS" Type="integer" Value="[USEDNS]" Id="reg_Full_Client10" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="SecurityLevel" Type="integer" Value="[SECURITYLEVEL]" Id="reg_Full_Client12" />
         <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="SMBAuthType" Type="integer" Value="[SMBAUTHTYPE]" Id="reg_Full_Client13" />
     </Component>
+    <Component Id="rcm_ClientCachePath" Guid="4080E08D-6649-4A06-B286-F5E737DF4D8A" Transitive="yes">
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="CachePath" Type="expandable" Value="[AFSCACHEPATH]" Id="reg_Full_Client14" KeyPath="yes" />
+        <Condition>AFSCACHEPATH &lt;&gt; ""</Condition>
+    </Component>
+    <Component Id="rcm_ClientCacheSize" Guid="F3A12290-920B-42E9-8E49-4958D7C0B6E2" Transitive="yes">
+        <Registry Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\TransarcAFSDaemon\Parameters" Name="CacheSize" Type="integer" Value="[AFSCACHESIZE]" Id="reg_Full_Client15" KeyPath="yes" />
+        <Condition>AFSCACHESIZE &lt;&gt; ""</Condition>
+    </Component>
     <Component Id="rcm_Documentation" Guid="97493526-4A5C-4C55-A1D6-EA38841B1B85">
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation" KeyPath="yes" Id="reg_Docs2" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation" Name="*" Id="reg_Docs" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="*" Id="reg_Docs3" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Docs" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Docs3" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Docs4" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Id="reg_Docs5" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Docs6" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Docs7" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Docs8" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="Software Type" Value="File System" Id="reg_Docs9" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="PathName" Value="[AFSDIR]Documentation" Id="reg_Docs10" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Docs11" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Docs13" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="Description" Value="$(loc.StrAFSDocDesc)" Id="reg_Docs14" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="*" Id="reg_Docs16" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Docs8" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="Software Type" Type="string" Value="File System" Id="reg_Docs9" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="PathName" Type="string" Value="[AFSDIR]Documentation" Id="reg_Docs10" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Docs11" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Docs13" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\CurrentVersion" Name="Description" Type="string" Value="$(loc.StrAFSDocDesc)" Id="reg_Docs14" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_Docs16" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_Docs17" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Id="reg_Docs18" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_Docs19" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_Docs20" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_Docs21" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="Software Type" Value="File System" Id="reg_Docs22" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="PathName" Value="[AFSDIR]Documentation" Id="reg_Docs23" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_Docs24" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_Docs26" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="Description" Value="$(loc.StrAFSDocDesc)" Id="reg_Docs27" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_Docs21" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="Software Type" Type="string" Value="File System" Id="reg_Docs22" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="PathName" Type="string" Value="[AFSDIR]Documentation" Id="reg_Docs23" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_Docs24" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_Docs26" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS Supplemental Documentation\$(var.NumericVersion)" Name="Description" Type="string" Value="$(loc.StrAFSDocDesc)" Id="reg_Docs27" />
     </Component>
     <Component Id="rcm_SDK" Guid="648BE65B-C152-412C-A45C-1562512B52DC">
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK" KeyPath="yes" Id="reg_SDK2" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK" Name="*" Id="reg_SDK" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="*" Id="reg_SDK3" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_SDK" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_SDK3" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_SDK4" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Id="reg_SDK5" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_SDK6" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_SDK7" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_SDK8" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="Software Type" Value="File System" Id="reg_SDK9" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="PathName" Value="[AFSDIR]lib" Id="reg_SDK10" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_SDK11" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_SDK13" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="Description" Value="$(loc.StrAFSSDKDesc)" Id="reg_SDK14" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="*" Id="reg_SDK16" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_SDK8" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="Software Type" Type="string" Value="File System" Id="reg_SDK9" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="PathName" Type="string" Value="[AFSDIR]lib" Id="reg_SDK10" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_SDK11" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_SDK13" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\CurrentVersion" Name="Description" Type="string" Value="$(loc.StrAFSSDKDesc)" Id="reg_SDK14" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Action="createKeyAndRemoveKeyOnUninstall" Id="reg_SDK16" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="MinorVersion" Type="integer" Value="$(var.VersionMinor)" Id="reg_SDK17" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Id="reg_SDK18" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="PatchLevel" Type="integer" Value="$(var.VersionPatch)" Id="reg_SDK19" />
         <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="MajorVersion" Type="integer" Value="$(var.VersionMajor)" Id="reg_SDK20" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="ReleaseType" Value="$(var.ReleaseType)" Id="reg_SDK21" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="Software Type" Value="File System" Id="reg_SDK22" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="PathName" Value="[AFSDIR]lib" Id="reg_SDK23" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="VersionString" Value="$(var.NumericVersion)" Id="reg_SDK24" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="InstallDateString" Value="$(var.InstallTimestamp)" Id="reg_SDK26" />
-        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="Description" Value="$(loc.StrAFSSDKDesc)" Id="reg_SDK27" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="ReleaseType" Type="string" Value="$(var.ReleaseType)" Id="reg_SDK21" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="Software Type" Type="string" Value="File System" Id="reg_SDK22" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="PathName" Type="string" Value="[AFSDIR]lib" Id="reg_SDK23" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="VersionString" Type="string" Value="$(var.NumericVersion)" Id="reg_SDK24" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="InstallDateString" Type="string" Value="$(var.InstallTimestamp)" Id="reg_SDK26" />
+        <Registry Root="HKLM" Key="SOFTWARE\TransarcCorporation\AFS SDK\$(var.NumericVersion)" Name="Description" Type="string" Value="$(loc.StrAFSSDKDesc)" Id="reg_SDK27" />
     </Component>
 
     <!-- Work around bug KB30673.  Only for Windows 2000. -->    
             being removed when the product is uninstalled. This is just a flag component to add to the
             loopback feature so that it is not empty. -->    
     <Component Id="rcm_Loopback" Guid="9F9BBDA3-208C-4F93-B81F-313E031B6DDA">
-        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client" Name="LoopbackInstalled" Type="integer" Value="1" Id="reg_Loopback1" />
+        <Registry Root="HKLM" Key="SOFTWARE\OpenAFS\Client" Name="LoopbackInstalled" Type="integer" Value="1" Id="reg_Loopback1" KeyPath="yes" />
     </Component>
     
 </Include>