Thema Datum  Von Nutzer Rating
Antwort
09.03.2004 16:49:25 manuel
NotSolved
09.03.2004 17:38:59 Rasta
NotSolved
09.03.2004 17:40:53 Rasta
NotSolved
10.03.2004 12:22:57 manuel
NotSolved
Rot Aw:Aw:Aw:office-version auslesen
10.03.2004 12:50:38 Rasta
NotSolved

Ansicht des Beitrags:
Von:
Rasta
Datum:
10.03.2004 12:50:38
Views:
1285
Rating: Antwort:
  Ja
Thema:
Aw:Aw:Aw:office-version auslesen
Hi Manuel,

die jeweilige applikations-version kannst du so auslesen.

die installierte office-version kann man meiner meinung nur aus der registry auslesen. deswegen benutze das angehängte script(die funktion) -- das sub ist nur als beispiel, wie man auf die funktion zugreifen könnte

um das im code einfacher zu handhaben, würde ich eine klasse basteln-- etwa so:


Function officeVersion() As String

'HKLM\SOFTWARE\Microsoft\Office\10.0\Common\InstallRoot ' Office XP
'HKLM\SOFTWARE\Microsoft\Office\9.0\Common\InstallRoot ' Office 2000
'HKLM\SOFTWARE\Microsoft\Office\8.0\Common\InstallRoot ' Office 97

Dim sRegpRE As String

Dim SrEGpOST As String


sRegpRE = "HKLM\SOFTWARE\Microsoft\Office\"
SrEGpOST = "\Common\InstallRoot\"

Select Case True
Case RegKeyExists(sRegpRE & "10.0" & SrEGpOST)
officeVersion = "XP"
Case RegKeyExists(sRegpRE & "9.0" & SrEGpOST)
officeVersion = "2000"
Case RegKeyExists(sRegpRE & "8.0" & SrEGpOST)
officeVersion = "97"
Case Else
officeVersion = "none"
End Select


'MsgBox "Installierte Office-Version: " & sOfficeVer

'officeVersion = sofficever

End Function

Function RegKeyExists(sRegKey)
Dim oShell As Object
Dim RegReadReturn


Set oShell = CreateObject("WScript.Shell")
RegKeyExists = True
sRegKey = Trim(sRegKey)
If Not Right(sRegKey, 1) = "\" Then
sRegKey = sRegKey & "\"
End If
On Error Resume Next
RegReadReturn = oShell.RegRead(sRegKey)
If Err Then
If LCase(Left(Err.Description, 7)) = "invalid" Then
'key not found...
RegKeyExists = False
End If
Err.Clear
End If
On Error GoTo 0
End Function


die klasse nennst du beliebig --indem fall "klasse1"

auf diese kannst du dann folgendermaßen zugreifen:


Sub main()
Dim test As New Klasse1


MsgBox test.officeVersion


End Sub


viele grüße

rasta



manuel schrieb am 10.03.2004 12:22:57:

Hei Rasta!

danke fuer deine Antwort - aber es muss docheinfacher gehen?

etwa so?

Private Sub CommandButton1_Click()

MsgBox Environ("Username") & " " & Environ("???????") & " " & Environ("UserDomain")

End Sub


gruss manuel!



sub main

'HKLM\SOFTWARE\Microsoft\Office\10.0\Common\InstallRoot ' Office XP
'HKLM\SOFTWARE\Microsoft\Office\9.0\Common\InstallRoot ' Office 2000
'HKLM\SOFTWARE\Microsoft\Office\8.0\Common\InstallRoot ' Office 97

sRegPre = "HKLM\SOFTWARE\Microsoft\Office\"
sRegPost = "\Common\InstallRoot\"

Select Case True
Case RegKeyExists(sRegPre & "10.0" & sRegPost)
sOfficeVer = "XP"
Case RegKeyExists(sRegPre & "9.0" & sRegPost)
sOfficeVer = "2000"
Case RegKeyExists(sRegPre & "8.0" & sRegPost)
sOfficeVer = "97"
Case Else
sOfficeVer = "none"
End Select


msgbox "Installierte Office-Version: " & sOfficeVer
end sub

Function RegKeyExists(sRegKey)
Set oShell = CreateObject("WScript.Shell")
RegKeyExists = True
sRegKey = Trim (sRegKey)
If Not Right(sRegKey, 1) = "\" Then
sRegKey = sRegKey & "\"
End if
On Error Resume Next
RegReadReturn = oShell.RegRead(sRegKey)
If Err Then
If LCase(Left(err.description,7)) = "invalid" Then
'key not found...
RegKeyExists = False
End if
Err.clear
End if
On Error Goto 0
End Function




Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
09.03.2004 16:49:25 manuel
NotSolved
09.03.2004 17:38:59 Rasta
NotSolved
09.03.2004 17:40:53 Rasta
NotSolved
10.03.2004 12:22:57 manuel
NotSolved
Rot Aw:Aw:Aw:office-version auslesen
10.03.2004 12:50:38 Rasta
NotSolved