Objective Corporation Objective

Version: 7
Views: 2.4k  |  Created: 02/19/2007

Average Rating: 0
Objective has 1 inventory records, 0 Questions, 0 Blogs and 0 links. Please help add to this by sharing more!

Deployment Tips (1)

Most Common Setup Type
Legacy Setup with no known command line support
Average Package Difficulty Rating
Rated 4 / 5 (Somewhat Difficult) based on 2 ratings
Most Commonly Reported Deployment Method
Windows Installer Command Line (No MST)

Deployment Tip Summary

**Overview**** **Objective or Objective Navigator can be silently installed via msiexec commands parsed to the .msi installer. Each company will have their preferred list of components etc, for example the script we use is over 600 lines long to take into account all secnarios encountered in deployment. Some example commands along with prerequisites etc can be found below.**** I would recommend extracting the .msi installer from the .exe installer to have the greatest control over the deployment.****** ** **Prerequisites** Visual C++ 2005 SP1 (32/64 bit respective of taget OS) Visual C++ 2008 SP1 (32/64 bit respective of taget OS) **Install Commands** **>** To install Objective 7.5.5.1 silently with default components and log the install: _msiexec.exe /i Objective7551.msi /qn REBOOT=ReallySuppress ALLUSERS=1 /Lv C:\Windows\Logs\obj7551-CMD1.log_ **>** To remove components from a full featured installation of Objective 7.5.5.1: __msiexec.exe /i_ Objective7551.msi /qn REBOOT=ReallySuppress REMOVE=WinTalk,Outreach /Lv C:\Windows\Logs\obj7551-CMD2.log_ _**NOTE: if you install via the .msi then you will need to ensure that the ObjectiveReporting component is also installed as the overall Setup.exe contains both.**_
or cancel
118
Note
Here is our method for uninstalling Objective v6.3 and installing Objective 7. We have a locked down enviroment that requires permissions to be set to allow this installation to proceed.

Step 1 - Uninstall Objective 6.3
The following Uninstall.bat file completes the uninstall process.

@Echo off
REM -------
REM Uninstall the old version of Objective
msiexec /x ObjectiveV6i-SP3.msi /qn
REM -------
REM Delete registry settings left behind by uninstall process
regedit /s Uninstall.reg
REM --------
REM Delete the old PF folder
rd /s /q "C:\Program Files\Objective"
REM -------
REM Remove left over Objective 6.3 files for office integration & shortcuts & outlook
del /q /s /f objin*.*
del /q /s /f *objective*.lnk*
del /q /s /f *objwin*.lnk*
del /q /s /f Extend.dat

Appendix A - Uninstall.reg
Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Objective Corporation]

[-HKEY_CLASSES_ROOT\ODMA32]

[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ODMA32]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders]
"C:\\Program Files\\Objective\\Client\\"=-
"C:\\Program Files\\Objective\\"=-

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List]
"C:\\Program Files\\Objective\\Client\\objwin.exe"=-

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List]
"C:\\Program Files\\Objective\\Client\\objwin.exe"=-

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List]
"C:\\Program Files\\Objective\\Client\\objwin.exe"=-

[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache]
"C:\\Program Files\\Objective\\Client\\objwin.exe"=-

[-HKEY_CURRENT_USER\Software\Objective]

[-HKEY_LOCAL_MACHINE\SOFTWARE\Objective]


Step 2 – Install Microsoft Installer v3.1 and reboot
WindowsInstaller3.1-v2-x86.exe /quiet /norestart
Reboot after this install.


Step 3 – Install Objective 7
Create a straightforward tailored capture of the .MSI.
Edit the .MSI directly with Orca and change the ALLUSERS property to 2.
Install the Install Shield Script v11.5.
Install Objective referencing the transform.
Copy and register the Objective dll’s
Change permissions on the C:\Program Files\Objective folder so that Domain Users group has full control.
Change permissions on the HKCU\Software\Objective registry tree so that Domain Users have full control.
Change permissions on the HKLM\Software\Objective registry tree so that Domain Users have full control.

The following Install.Bat file completes the install:
@echo off
start /wait msiexec /i ISScript1150.Msi /qn
start /wait msiexec /i "Objective 7.msi" TRANSFORMS="Objective 7.mst" /qn
copy /y objpb.dll %SystemRoot%\system32
copy /y ObjAutoHierarchyCreator.dll %SystemRoot%\system32
regsvr32 /s %SystemRoot%\system32\ObjAutoHierarchyCreator.dll
cscript xcacls.vbs "C:\Program Files\Objective" /p "pbc\domain users":f system:f /T
regedit /s Objective.reg
SetACL.exe -on "hkcu\software\objective" -ot reg -actn rstchldrn -ace "n:pbc\domain users;p:full;I:so,sc" -rst dacl
SetACL.exe -on "hkLM\software\objective" -ot reg -actn rstchldrn -ace "n:pbc\domain users;p:full;I:so,sc" -rst dacl


The logon script should also set certain registry values when the logs on for the first time or their profile is blown away. Here is an excerpt from the logon script:
; Configure Objective Environment
;==========================================================


;Create Objective Cache folder on the local computer

$OBJPATH = "%userprofile%\Objectivecache"

If NOT Exist ($OBJPATH)
$LogItem = Log("Objective Cache directory missing... Creating",$LogFile)
MD $OBJPATH
If @ERROR <> 0
? "Objective Cache directory creation Failed!"
? "Error............. " + @SERROR
$LogItem = Log("Objective Cache directory creation Failed!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Cache Directory....... Created"
$LogItem = Log("Objective Cache Directory....... Created",$LogFile)
EndIf

EndIf


;Write Objective Path location to the user profile

$BASEKEY="HKEY_CURRENT_USER\Software\Objective\Client\"
$ADKEY="Preferences"
$ADKEYX="ObjectiveHome"
$ADKEYZ="OfficeIntegration"
$ = AddKey($BASEKEY+$ADKEY)
$NOTFIRSTTIME="%userprofile%\Objectivecache\NotFirstTime.Log"

;Check to see if this is the first time a user has run objective on this machine by looking for the existance of the file NotFirstTime.Log
If exist ($NotFirstTime)
? "Objective has already been run by this user"
$LogItem = Log("This is not the first time Objective has been run for this user on this machine",$LogFile)
Else
$ReturnCode = DelTree("HKEY_CURRENT_USER\Software\Objective\Client\ObjectiveHome")
If $ReturnCode = 0
? "ObjectiveHome Key deleted...."
$LogItem = Log("ObjectiveHome Key deleted....",$LogFile)
Else
$LogItem = Log("ObjectiveHome Key deletion Failed!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Endif

$ReturnCode = DelTree("HKEY_CURRENT_USER\Software\Objective\Client\OfficeIntegration")
If $ReturnCode = 0
? "OfficeIntegration Key deleted...."
$LogItem = Log("OfficeIntegration Key deleted....",$LogFile)
Else
$LogItem = Log("OfficeIntegration Key deletion Failed!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Endif

$ReturnCode = DelTree("HKEY_CURRENT_USER\Software\Objective\Client\Preferences")
If $ReturnCode = 0
? "Preferences Key deleted...."
$LogItem = Log("Preferences Key deleted....",$LogFile)
Else
$LogItem = Log("Preferences Key deletion Failed!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Endif

$ReturnCode = DelTree("HKEY_CURRENT_USER\Software\Objective\Client\Spelling")
If $ReturnCode = 0
? "Spelling Key deleted...."
$LogItem = Log("Spelling Key deleted....",$LogFile)
Else
$LogItem = Log("Spelling Key deletion Failed!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Endif

$ReturnCode = DelTree("HKEY_CURRENT_USER\Software\Objective\Client\Services")
If $ReturnCode = 0
? "Services Key deleted...."
$LogItem = Log("Spelling Key deleted....",$LogFile)
Else
$LogItem = Log("Services Key deletion Failed!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Endif
Copy "%logonserver%\netlogon\Notfirsttime.Log" "%userprofile%\Objectivecache"

Endif


$ = WriteValue($BASEKEY+$ADKEYX,"LastLogin","|objtrain|8053","REG_SZ")
If @ERROR <> 0
? "Error writing Objective registry key 1!"
? "Error............. " + @SERROR
$LogItem = Log("Error writing Objective registry key1 !",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Registry Key 1 LastLogin........ Written"
$LogItem = Log("Objective Registry Key 1 LastLogin........ Written",$LogFile)
EndIf


$ = WriteValue($BASEKEY+$ADKEY,"LogFile","%Programfiles%\Objective\Client 7\error.log","REG_SZ")
If @ERROR <> 0
? "Error writing Objective registry key 2!"
? "Error............. " + @SERROR
$LogItem = Log("Error writing Objective registry key2 !",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Registry Key 2 LogFile........ Written"
$LogItem = Log("Objective Registry Key 2 LogFile........ Written",$LogFile)
EndIf


$ = WriteValue($BASEKEY+$ADKEY,"CacheDirectory","%userprofile%\Objectivecache","REG_SZ")
If @ERROR <> 0
? "Error writing Objective registry key 3!"
? "Error............. " + @SERROR
$LogItem = Log("Error writing Objective registry key 3!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Registry Key 3 Cachedirectory........ Written"
$LogItem = Log("Objective Registry Key 3 Cachedirectory........ Written",$LogFile)
EndIf

$ = WriteValue($BASEKEY+$ADKEY,"DefaultHome","%userprofile%\Objectivecache","REG_SZ")
If @ERROR <> 0
? "Error writing Objective registry key 4!"
? "Error............. " + @SERROR
$LogItem = Log("Error writing Objective registry key 4!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Registry Key 4 DefaultHome....... Written"
$LogItem = Log("Objective Registry Key 4 DefaultHome....... Written",$LogFile)
EndIf

$ = WriteValue($BASEKEY+$ADKEYZ,"EnableLockDown","0","REG_DWORD")
$ = WriteValue($BASEKEY+$ADKEYZ,"EnableIntegration","1","REG_DWORD")
$ = WriteValue($BASEKEY+$ADKEYZ,"MS WordConnection","ObjCommunicator","REG_SZ")
$ = WriteValue($BASEKEY+$ADKEYZ,"MS PowerPointConnection","ObjCommunicator","REG_SZ")
$ = WriteValue($BASEKEY+$ADKEYZ,"MS ExcelConnection","ObjCommunicator","REG_SZ")
$ = WriteValue($BASEKEY+$ADKEYZ,"MS IEConnection","ObjCommunicator","REG_SZ")
If @ERROR <> 0
? "Error writing Objective registry key 5..10!"
? "Error............. " + @SERROR
$LogItem = Log("Error writing Objective registry key 5..10!",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Registry Key 5..10 DefaultHome....... Written"
$LogItem = Log("Objective Registry Key 5..10 DefaultHome....... Written",$LogFile)
EndIf


;Run Objective Automated Hierachy Creation

If Exist ($XPPATH)

Run "regsvr32.exe c:\WINDOWS\system32\ObjAutoHierarchyCreator.dll /s"
If @ERROR <> 0
? "Error loading Objective Automated Hierachy Creation"
? "Error............. " + @SERROR
$LogItem = Log("Error registering Objective Automated Hierachy Creation",$LogFile)
$LogItem = Log("Error............. ",$LogFile)
Sleep $SLPERROR
Else
? "Objective Automated Hierachy.... Loaded"
$LogItem = Log("Objective Automated Hierachy.... Registered",$LogFile)
EndIf

EndIf
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
This content is currently hidden from public view.
Reason: Entry posted was duplicate, thus removed.
For more information, visit our FAQ's.

Inventory Records (1)

View inventory records anonymously contributed by opt-in users of the K1000 Systems Management Appliance.

Versions

Objective

Version

7

Questions & Answers (0)

Questions & Answers related to Objective Corporation Objective

Blogs (0)

Blog posts related to Objective Corporation Objective

Reviews (0)

Reviews related to Objective Corporation Objective