Domanda

Sto cercando il modo più sicuro per rilevare quali componenti di Microsoft Office, se presente, sono installati su una determinata workstation.Mi rendo conto che questo potrebbe essere visto anche come domanda per Serverfault, ma poiché lo userò in uno script e molte persone qui sono più familiari con il funzionamento interno dell'ufficio, pensavo che sarebbe stato il miglior posto dove chiedere.

Ho esaminato la chiave di disinstallazione, ma mostra componenti che non esistono effettivamente sul sistema.Credo che questo abbia a che fare con il modo in cui l'ufficio può installare un componente sul primo accesso.Non mi piace cercare gli eseguibili poiché il percorso può cambiare teoricamente.

È stato utile?

Soluzione

Ho finito i test per chiavi di registro specifici, tenendo conto delle differenze tra le installazioni di Windows a 32 e 64 bit.Sto prestando attenzione alle seguenti posizioni / valori del registro:

    .
  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\12.0\: la base Office12 Tasto su un installazione di Windows a 64 bit
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\-the Base Office12 Posizione su Windows install a 32 bit
  • Office base path \Outlook\InstallRoot\Path-Key Significativa Outlook Percorso di installazione di Outlook
  • Office base path \Registration\{90120000-0012-0000-0000-0000000FF1CE}-Key per Office 12 GUID standard
  • Office base path \Registration\{90120000-0011-0000-0000-0000000FF1CE}-Key per Office 12 Professional Plus Guid

Con queste posizioni sono stato in grado di:

    .
  1. rileva se l'ufficio è installato.
  2. Rileva la versione dell'ufficio installata.
  3. rileva se Outlook è installato.
  4. Non ho tentato di ottenere più granulare di questo.

Altri suggerimenti

Se ritieni veramente di non poter fare affidamento sui percorsi per EXE o DLL, dovrei differenziare il registro (molti strumenti per questo esistono) di prima e dopo istantanee di installazione dei vari componenti.Nella mia esperienza, tuttavia, trovo necessario testare l'esistenza di DLL e altri file per rilevare i componenti installati per Office (ho dovuto testare per DLL VBA per rilevare la presenza del modulo Visual Basic installato, ad esempio).I percorsi dei file possono solo cambiare così tanto.Hai solo bisogno di essere consapevole di patching a 32 bit e 64 bit e percorso Winxp e Win7.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top