Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Herausfinden ob eine Microsoft Office Anwendung installiert ist (mit VBS bzw. VBA)

Anleitung Entwicklung VB for Applications

Mitglied: colinardo

colinardo (Level 5) - Jetzt verbinden

14.04.2013, aktualisiert 17.04.2013, 5368 Aufrufe, 2 Kommentare, 3 Danke

Diese Frage müssen sich Programmierer immer mal wieder stellen: "Wie kriege ich raus ob eine Office-Anwendung installiert ist?". Dafür gibt es wie immer mehrere Wege die zum Ziel führen. Für alle die schnell eine Lösung dafür benötigen habe ich zwei Funktionen bereitgestellt mit denen diese Abfrage komfortabel in VBS /VBA gelöst werden kann. Viele Anleitungen im Web bieten immer nur Lösungen für die Abfrage einzelner Office Anwendungen. Diese Lösung kombiniert alle möglichen Applikationen für Office 2003, 2007 und 2010 in zwei Funktionen.

Um die unten aufgeführten Funktionen zu nutzen kann z.B. folgender Code benutzt werden:
01.
If isOffice2010AppInstalled("Microsoft Office Professional Plus 2010") Then 
02.
	'App is installed 
03.
	WScript.Echo "Microsoft Office Professional Plus 2010 ist installiert." 
04.
Else 
05.
	'App is not installed 
06.
	WScript.Echo "Microsoft Office Professional Plus 2010 ist nicht installiert." 
07.
End If
Als Parameter der Funktionen muss der Name der Office-Anwendung angegeben werden für die überprüft werden soll ob sie installiert ist. Die möglichen Werte für diesen Parameter sind unter den Funktionen aufgelistet. Die Rückgabewerte der Funktionen sind TRUE (-1) bei vorhandener Installation der Anwendung und FALSE (0) falls nicht.


Funktion für Office 2003

01.
Function isOffice2003AppInstalled(appname) 
02.
	Set objRegistry = GetObject("winmgmts:\\.\root\default:StdRegProv") 
03.
	Dim productID,appInstalled,appReg,osArch 
04.
        const HKEY_LOCAL_MACHINE = &H80000002 
05.
	Dim appRegSubkeys() 
06.
        appInstalled = False 
07.
	 
08.
        Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 
09.
        Set colOSes = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") 
10.
        For Each objOS in colOSes 
11.
           osArch = objOS.OSArchitecture 
12.
        Next 
13.
	 
14.
	If osArch = "64-Bit" Then 
15.
		appReg = "Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" 
16.
	Else 
17.
		appReg = "Software\Microsoft\Windows\CurrentVersion\Uninstall" 
18.
	End If 
19.
	 
20.
	Select Case appname 
21.
		Case "Microsoft Office Professional Enterprise Edition 2003" 
22.
		productID = "11" 
23.
		Case "Microsoft Office Standard Edition 2003" 
24.
		productID = "12" 
25.
		Case "Microsoft Office Basic Edition 2003" 
26.
		productID = "13" 
27.
		Case "Microsoft Windows SharePoint Services 2.0" 
28.
		productID = "14" 
29.
		Case "Microsoft Office Access 2003" 
30.
		productID = "15" 
31.
		Case "Microsoft Office Excel 2003" 
32.
		productID = "16" 
33.
		Case "Microsoft Office FrontPage 2003" 
34.
		productID = "17" 
35.
		Case "Microsoft Office PowerPoint 2003" 
36.
		productID = "18" 
37.
		Case "Microsoft Office Publisher 2003" 
38.
		productID = "19" 
39.
		Case "Microsoft Office Outlook Professional 2003" 
40.
		productID = "1A" 
41.
		Case "Microsoft Office Word 2003" 
42.
		productID = "1B" 
43.
		Case "Microsoft Office Access 2003-Laufzeit" 
44.
		productID = "1C" 
45.
		Case "Microsoft Office 2003 User Interface Pack" 
46.
		productID = "1E" 
47.
		Case "Microsoft Office 2003-Korrekturhilfen" 
48.
		productID = "1F" 
49.
		Case "Microsoft Office 2003 Multilingual User Interface Pack" 
50.
		productID = "23" 
51.
		Case "Microsoft Office 2003 Resource Kit" 
52.
		productID = "24" 
53.
		Case "Microsoft Office XP-Webkomponenten" 
54.
		productID = "26" 
55.
		Case "Microsoft Office 2003 Research Service SDK" 
56.
		productID = "2E" 
57.
		Case "Microsoft Office InfoPath 2003" 
58.
		productID = "44" 
59.
		Case "Microsoft Office 2003 HTML Viewer" 
60.
		productID = "83" 
61.
		Case "Windows SharePoint Services 2.0 Template Pack (Englisch)" 
62.
		productID = "92" 
63.
		Case "Microsoft Office 2003 Webparts und -komponenten (Englisch)" 
64.
		productID = "93" 
65.
		Case "Microsoft Office OneNote 2003" 
66.
		productID = "A1" 
67.
		Case "Microsoft Office 2003-Webkomponenten" 
68.
		productID = "A4" 
69.
		Case "Microsoft SharePoint Migration Tool 2003" 
70.
		productID = "A5" 
71.
		Case "Microsoft Office PowerPoint 2003 Präsentationsübertragung" 
72.
		productID = "AA" 
73.
		Case "Microsoft Office PowerPoint 2003 Template Pack 1" 
74.
		productID = "AB" 
75.
		Case "Microsoft Office PowerPoint 2003 Template Pack 2" 
76.
		productID = "AC" 
77.
		Case "Microsoft Office PowerPoint 2003 Template Pack 3" 
78.
		productID = "AD" 
79.
		Case "Microsoft Organigramm 2.0" 
80.
		productID = "AE" 
81.
		Case "Microsoft Office Small Business Edition 2003" 
82.
		productID = "CA" 
83.
		Case "Microsoft Office Access 2003 Developer Extensions" 
84.
		productID = "D0" 
85.
		Case "Microsoft Office 2003 Smart Document SDK" 
86.
		productID = "DC" 
87.
		Case "Microsoft Office Outlook Standard 2003" 
88.
		productID = "E0" 
89.
		Case "Microsoft Office Professional Edition 2003 (mit InfoPath 2003)" 
90.
		productID = "E3" 
91.
		Case "Microsoft Office Outlook 2003 (verteilt von MSN)" 
92.
		productID = "FD" 
93.
		Case "Microsoft Office 2003 User Interface Pack-Edition" 
94.
		productID = "FF" 
95.
		Case "Tool zum Entfernen verborgener Daten" 
96.
		productID = "F8" 
97.
		Case "Microsoft Office Project Standard 2003" 
98.
		productID = "3A" 
99.
		Case "Microsoft Office Project Professional 2003" 
100.
		productID = "3B" 
101.
		Case "Microsoft Office Project Server 2003" 
102.
		productID = "32" 
103.
		Case "Microsoft Office Visio Professional 2003" 
104.
		productID = "51" 
105.
		Case "Microsoft Office Visio Standard 2003" 
106.
		productID = "53" 
107.
		Case "Microsoft Office Visio 2003 Multilingual User Interface Pack" 
108.
		productID = "5E" 
109.
	End Select 
110.
	Set myRegExp = New RegExp 
111.
	myRegExp.Pattern = "^{9(0|1|2)" & productID & "[0-9A-F]{4}-.*}" 
112.
	objRegistry.EnumKey HKEY_LOCAL_MACHINE,appReg,appRegSubkeys 
113.
	For Each subkey In appRegSubkeys 
114.
		Set myMatches = myRegExp.Execute(subkey) 
115.
		If myMatches.Count >= 1 Then 
116.
			'Office App is installed 
117.
			appInstalled = True 
118.
		End If 
119.
	Next 
120.
	If appInstalled Then 
121.
		isOffice2003AppInstalled = True 
122.
	Else 
123.
		isOffice2003AppInstalled = False 
124.
	End if 
125.
	Set objRegistry = Nothing 
126.
End Function
Mögliche Anwendungsnamen als Parameter der Funktion:
  • Microsoft Office Professional Enterprise Edition 2003
  • Microsoft Office Standard Edition 2003
  • Microsoft Office Basic Edition 2003
  • Microsoft Windows SharePoint Services 2.0
  • Microsoft Office Access 2003
  • Microsoft Office Excel 2003
  • Microsoft Office FrontPage 2003
  • Microsoft Office PowerPoint 2003
  • Microsoft Office Publisher 2003
  • Microsoft Office Outlook Professional 2003
  • Microsoft Office Word 2003
  • Microsoft Office Access 2003-Laufzeit
  • Microsoft Office 2003 User Interface Pack
  • Microsoft Office 2003-Korrekturhilfen
  • Microsoft Office 2003 Multilingual User Interface Pack
  • Microsoft Office 2003 Resource Kit
  • Microsoft Office XP-Webkomponenten
  • Microsoft Office 2003 Research Service SDK
  • Microsoft Office InfoPath 2003
  • Microsoft Office 2003 HTML Viewer
  • Windows SharePoint Services 2.0 Template Pack (Englisch)
  • Microsoft Office 2003 Webparts und -komponenten (Englisch)
  • Microsoft Office OneNote 2003
  • Microsoft Office 2003-Webkomponenten
  • Microsoft SharePoint Migration Tool 2003
  • Microsoft Office PowerPoint 2003 Präsentationsübertragung
  • Microsoft Office PowerPoint 2003 Template Pack 1
  • Microsoft Office PowerPoint 2003 Template Pack 2
  • Microsoft Office PowerPoint 2003 Template Pack 3
  • Microsoft Organigramm 2.0
  • Microsoft Office Small Business Edition 2003
  • Microsoft Office Access 2003 Developer Extensions
  • Microsoft Office 2003 Smart Document SDK
  • Microsoft Office Outlook Standard 2003
  • Microsoft Office Professional Edition 2003 (mit InfoPath 200
  • Microsoft Office Outlook 2003 (verteilt von MSN)
  • Microsoft Office 2003 User Interface Pack-Edition
  • Tool zum Entfernen verborgener Daten
  • Microsoft Office Project Standard 2003
  • Microsoft Office Project Professional 2003
  • Microsoft Office Project Server 2003
  • Microsoft Office Visio Professional 2003
  • Microsoft Office Visio Standard 2003
  • Microsoft Office Visio 2003 Multilingual User Interface Pack

Funktion für Office 2007

01.
Function isOffice2007AppInstalled(appname) 
02.
	Set objRegistry = GetObject("winmgmts:\\.\root\default:StdRegProv") 
03.
	Dim productID,appInstalled,appReg,osArch 
04.
        const HKEY_LOCAL_MACHINE = &H80000002 
05.
	Dim appRegSubkeys() 
06.
        appInstalled = False 
07.
	 
08.
        Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 
09.
        Set colOSes = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") 
10.
        For Each objOS in colOSes 
11.
           osArch = objOS.OSArchitecture 
12.
        Next 
13.
 
14.
	If osArch = "64-Bit" Then 
15.
		appReg = "Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" 
16.
	Else 
17.
		appReg = "Software\Microsoft\Windows\CurrentVersion\Uninstall" 
18.
	End If 
19.
	 
20.
	Select Case appname 
21.
		Case "Microsoft-Softwareupdate für Webordner (Englisch) 12" 
22.
		productID = "0010" 
23.
		Case "Microsoft Office Professional Plus 2007" 
24.
		productID = "0011" 
25.
		Case "Microsoft Office Standard 2007" 
26.
		productID = "0012" 
27.
		Case "Microsoft Office Basic 2007" 
28.
		productID = "0013" 
29.
		Case "Microsoft Office Professional 2007" 
30.
		productID = "0014" 
31.
		Case "Microsoft Office Access 2007" 
32.
		productID = "0015" 
33.
		Case "Microsoft Office Excel 2007" 
34.
		productID = "0016" 
35.
		Case "Microsoft Office SharePoint Designer 2007" 
36.
		productID = "0017" 
37.
		Case "Microsoft Office PowerPoint 2007" 
38.
		productID = "0018" 
39.
		Case "Microsoft Office Publisher 2007" 
40.
		productID = "0019" 
41.
		Case "Microsoft Office Outlook 2007" 
42.
		productID = "001A" 
43.
		Case "Microsoft Office Word 2007" 
44.
		productID = "001B" 
45.
		Case "Microsoft Office Access Runtime 2007" 
46.
		productID = "001C" 
47.
		Case "Microsoft Office Compatibility Pack für Word, Excel und PowerPoint 2007-Dateiformate" 
48.
		productID = "0020" 
49.
		Case "Microsoft Expression Web" 
50.
		productID = "0026" 
51.
		Case "Microsoft Office Ultimate 2007" 
52.
		productID = "002E" 
53.
		Case "Microsoft Office Home and Student 2007" 
54.
		productID = "002F" 
55.
		Case "Microsoft Office Enterprise 2007" 
56.
		productID = "0030" 
57.
		Case "Microsoft Office Professional Hybrid 2007" 
58.
		productID = "0031" 
59.
		Case "Microsoft Office Personal 2007" 
60.
		productID = "0033" 
61.
		Case "Microsoft Office Professional Hybrid 2007" 
62.
		productID = "0035" 
63.
		Case "Microsoft Office Project Standard 2007" 
64.
		productID = "003A" 
65.
		Case "Microsoft Office Project Professional 2007" 
66.
		productID = "003B" 
67.
		Case "Microsoft Office InfoPath 2007" 
68.
		productID = "0044" 
69.
		Case "Microsoft Office Visio Professional 2007" 
70.
		productID = "0051" 
71.
		Case "Microsoft Office Visio Viewer 2007" 
72.
		productID = "0052" 
73.
		Case "Microsoft Office Visio Standard 2007" 
74.
		productID = "0053" 
75.
		Case "Microsoft Office OneNote 2007" 
76.
		productID = "00A1" 
77.
		Case "Microsoft Office OneNote Home Student 2007" 
78.
		productID = "00A3" 
79.
		Case "Kalenderdruck-Assistent für Microsoft Office Outlook 2007" 
80.
		productID = "00A7" 
81.
		Case "Microsoft Office InterConnect 2007" 
82.
		productID = "00A9" 
83.
		Case "Microsoft Office PowerPoint Viewer 2007 (Englisch)" 
84.
		productID = "00AF" 
85.
		Case "Die Microsoft-Save als PDF-add-in" 
86.
		productID = "00B0" 
87.
		Case "Die Microsoft-Save als XPS-add-in" 
88.
		productID = "00B1" 
89.
		Case "Die Microsoft-Save als PDF- oder XPS-add-in" 
90.
		productID = "00B2" 
91.
		Case "Microsoft Office Groove 2007" 
92.
		productID = "00BA" 
93.
		Case "Microsoft Office Small Business 2007" 
94.
		productID = "00CA" 
95.
		Case "Microsoft Office Access-Datenbankmodul 2007 (Englisch)" 
96.
		productID = "00D1" 
97.
		Case "Microsoft Office InfoPath Forms Services" 
98.
		productID = "10D7" 
99.
		Case "Microsoft Office SharePoint Server 2007" 
100.
		productID = "110D" 
101.
		Case "Windows SharePoint Services-Ressourcen für Entwickler 1.2" 
102.
		productID = "1122" 
103.
	End Select 
104.
	Set myRegExp = New RegExp 
105.
	myRegExp.Pattern = "^{9(0|1|2)120000-" & productID & "-[0-9A-F]{4}-(0|1)000-0000000FF1CE}$" 
106.
	objRegistry.EnumKey HKEY_LOCAL_MACHINE,appReg,appRegSubkeys 
107.
	For Each subkey In appRegSubkeys 
108.
		Set myMatches = myRegExp.Execute(subkey) 
109.
		If myMatches.Count >= 1 Then 
110.
			'Office App is installed 
111.
			appInstalled = True 
112.
		End If 
113.
	Next 
114.
	If appInstalled Then 
115.
		isOffice2007AppInstalled = True 
116.
	Else 
117.
		isOffice2007AppInstalled = False 
118.
	End if 
119.
	Set objRegistry = Nothing 
120.
End Function
Mögliche Anwendungsnamen als Parameter der Funktion:
  • Microsoft-Softwareupdate für Webordner (Englisch) 12
  • Microsoft Office Professional Plus 2007
  • Microsoft Office Standard 2007
  • Microsoft Office Basic 2007
  • Microsoft Office Professional 2007
  • Microsoft Office Access 2007
  • Microsoft Office Excel 2007
  • Microsoft Office SharePoint Designer 2007
  • Microsoft Office PowerPoint 2007
  • Microsoft Office Publisher 2007
  • Microsoft Office Outlook 2007
  • Microsoft Office Word 2007
  • Microsoft Office Access Runtime 2007
  • Microsoft Office Compatibility Pack für Word, Excel und PowerPoint 2007-Dateiformate
  • Microsoft Expression Web
  • Microsoft Office Ultimate 2007
  • Microsoft Office Home and Student 2007
  • Microsoft Office Enterprise 2007
  • Microsoft Office Professional Hybrid 2007
  • Microsoft Office Personal 2007
  • Microsoft Office Professional Hybrid 2007
  • Microsoft Office Project Standard 2007
  • Microsoft Office Project Professional 2007
  • Microsoft Office InfoPath 2007
  • Microsoft Office Visio Professional 2007
  • Microsoft Office Visio Viewer 2007
  • Microsoft Office Visio Standard 2007
  • Microsoft Office OneNote 2007
  • Microsoft Office OneNote Home Student 2007
  • Kalenderdruck-Assistent für Microsoft Office Outlook 2007
  • Microsoft Office InterConnect 2007
  • Microsoft Office PowerPoint Viewer 2007 (Englisch)
  • Die Microsoft-Save als PDF-add-in
  • Die Microsoft-Save als XPS-add-in
  • Die Microsoft-Save als PDF- oder XPS-add-in
  • Microsoft Office Groove 2007
  • Microsoft Office Small Business 2007
  • Microsoft Office Access-Datenbankmodul 2007 (Englisch)
  • Microsoft Office InfoPath Forms Services
  • Microsoft Office SharePoint Server 2007
  • Windows SharePoint Services-Ressourcen für Entwickler 1.2

Funktion für Office 2010

01.
Function isOffice2010AppInstalled(appname) 
02.
	Set objRegistry = GetObject("winmgmts:\\.\root\default:StdRegProv") 
03.
	Dim productID,appInstalled,appReg,osArch 
04.
	const HKEY_LOCAL_MACHINE = &H80000002 
05.
	appInstalled = False 
06.
	Dim appRegSubkeys() 
07.
 
08.
	Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 
09.
        Set colOSes = objWMIService.ExecQuery("Select * from Win32_OperatingSystem") 
10.
        For Each objOS in colOSes 
11.
           osArch = objOS.OSArchitecture 
12.
        Next 
13.
 
14.
	If osArch = "64-Bit" Then 
15.
		appReg = "Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" 
16.
	Else 
17.
		appReg = "Software\Microsoft\Windows\CurrentVersion\Uninstall" 
18.
	End If 
19.
 
20.
	Select Case appname 
21.
		Case "Microsoft Office Professional Plus 2010" 
22.
			productID = "0011" 
23.
		Case "Microsoft Office Standard 2010" 
24.
			productID = "0012" 
25.
		Case "Microsoft Office Home and Business 2010" 
26.
			productID = "0013" 
27.
		Case "Microsoft Office Professional 2010" 
28.
			productID = "0014" 
29.
		Case "Microsoft Access 2010" 
30.
			productID = "0015" 
31.
		Case "Microsoft Excel 2010" 
32.
			productID = "0016" 
33.
		Case "Microsoft SharePoint Designer 2010" 
34.
			productID = "0017" 
35.
		Case "Microsoft PowerPoint 2010" 
36.
			productID = "0018" 
37.
		Case "Microsoft Publisher 2010" 
38.
			productID = "0019" 
39.
		Case "Microsoft Outlook 2010" 
40.
			productID = "001A" 
41.
		Case "Microsoft Word 2010" 
42.
			productID = "001B" 
43.
		Case "Microsoft Access Runtime 2010" 
44.
			productID = "001C" 
45.
		Case "Microsoft Office Proofing Tools Kit Compilation 2010" 
46.
			productID = "001F" 
47.
		Case "Microsoft Office Home and Student 2010" 
48.
			productID = "002F" 
49.
		Case "Microsoft Project Standard 2010" 
50.
			productID = "003A" 
51.
		Case "Microsoft Project Professional 2010" 
52.
			productID = "003B" 
53.
		Case "Microsoft InfoPath 2010" 
54.
			productID = "0044" 
55.
		Case "Microsoft Visio Viewer 2010" 
56.
			productID = "0052" 
57.
		Case "Microsoft Visio 2010" 
58.
			productID = "0057" 
59.
		Case "Microsoft Outlook Connector" 
60.
			productID = "007A" 
61.
		Case "Microsoft Office Small Business Basics 2010" 
62.
			productID = "008B" 
63.
		Case "Microsoft OneNote 2010" 
64.
			productID = "00A1" 
65.
		Case "Microsoft PowerPoint Viewer 2010" 
66.
			productID = "00AF" 
67.
		Case "Microsoft Office SharePoint Workspace 2010" 
68.
			productID = "00BA" 
69.
		Case "Microsoft Office SharePoint Server 2010" 
70.
			productID = "110D" 
71.
		Case "Microsoft Project Server 2010" 
72.
			productID = "110F" 
73.
	End Select 
74.
	 
75.
	Set myRegExp = New RegExp 
76.
	myRegExp.Pattern = "^{9(0|1|2|5)140000-" & productID & "-[0-9A-F]{4}-(0|1)000-0000000FF1CE}$" 
77.
	objRegistry.EnumKey HKEY_LOCAL_MACHINE,appReg,appRegSubkeys 
78.
	For Each subkey In appRegSubkeys 
79.
		Set myMatches = myRegExp.Execute(subkey) 
80.
		If myMatches.Count >= 1 Then 
81.
			'Office App is installed 
82.
			appInstalled = True 
83.
		End If 
84.
	Next 
85.
	If appInstalled Then 
86.
		isOffice2010AppInstalled = True 
87.
	Else 
88.
		isOffice2010AppInstalled = False 
89.
	End if 
90.
        Set objRegistry = Nothing 
91.
End Function
Mögliche Anwendungsnamen als Parameter der Funktion:
  • Microsoft Office Professional Plus 2010
  • Microsoft Office Standard 2010
  • Microsoft Office Home and Business 2010
  • Microsoft Office Professional 2010
  • Microsoft Access 2010
  • Microsoft Excel 2010
  • Microsoft SharePoint Designer 2010
  • Microsoft PowerPoint 2010
  • Microsoft Publisher 2010
  • Microsoft Outlook 2010
  • Microsoft Word 2010
  • Microsoft Access Runtime 2010
  • Microsoft Office Proofing Tools Kit Compilation 2010
  • Microsoft Office Home and Student 2010
  • Microsoft Project Standard 2010
  • Microsoft Project Professional 2010
  • Microsoft InfoPath 2010
  • Microsoft Visio Viewer 2010
  • Microsoft Visio 2010
  • Microsoft Outlook Connector
  • Microsoft Office Small Business Basics 2010
  • Microsoft OneNote 2010
  • Microsoft PowerPoint Viewer 2010
  • Microsoft Office SharePoint Workspace 2010
  • Microsoft Office SharePoint Server 2010
  • Microsoft Project Server 2010

Grüße colinardo
Mitglied: rubberman
16.04.2013 um 18:56 Uhr
Hallo colinardo,

gut gemacht
Zu ...
If osEnv("PROCESSOR_ARCHITECTURE") = "AMD64" Then 
... habe ich aber meine Bedenken. Zum einen solltest du per InStr() Funktion lediglich nach "64" suchen, zum anderen sagt der Prozessor nicht zwingend etwas über das Betriebssystem aus.
Alternativ könntest du in der WMI Klasse "Win32_OperatingSystem" die 64 im Wert für "CreationClassName" oder "OSArchitecture" suchen.

Übrigens hat M$ selbst ein mehrere tausend Zeilen langes Script zu diesem Zweck veröffentlicht:
Robust Office Inventory Scan Tool (ROISCAN)

Grüße
rubberman
Bitte warten ..
Mitglied: colinardo
16.04.2013, aktualisiert um 21:07 Uhr
Hi rubberman,
danke für deine Rückmeldung, Werde die 64Bit-Abfrage noch umbauen.Ist bereits korrigiert.
Danke auch für den Link, das Script kannte ich noch nicht.
Grüße Uwe
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
Lizenzfrage Microsoft Office 2016 (1)

Frage von ozn089 zum Thema Microsoft Office ...

Visual Studio
Interner Shop mit Microsoft Forms Anwendung C-Sharp (2)

Frage von talaihan zum Thema Visual Studio ...

Microsoft Office
gelöst Setup-CDs Microsoft Office VolumeLicense (3)

Frage von Winfried-HH zum Thema Microsoft Office ...

Microsoft Office
gelöst Microsoft Office Makro-Fehler unterdrücken (3)

Frage von Akrosh zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Microsoft
Ordner mit LW-Buchstaben versehen und benennen (19)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...