Hallo zusammen.
Ich möchte vor dem Start des Programms prüfen, ob Office 2003 auf dem Rechner installiert ist. Bisher habe ich nur die Abfrage für den Wordtyp gefunden. Wie kann ich abfangen, dass eine alte Office Version auf dem Rechner installiert ist?
private Word._Application pWord;
public Type wordtyp = null;
this.wordtyp = Type.GetTypeFromProgID("Word.Application");
if (wordtyp == null)
{
//"MS-Word ist nicht installiert.";
return;
}
this.pWord = new Word.Application();
}
catch //(TypeLoadException typex)
{
}
Wäre es nicht einfacher die installierte Office Version in der Registry abzufragen?
Wie kann ich abfangen, dass eine alte Office Version auf dem Rechner installiert ist?
naja du könntest einfach eine instanz erzeugen und die version abfragen 🙂
aber in die registry schaun wäre wohl etwas schneller und resourcenschonender 🙂
Hey wuschel,
habe gerade gesucht, jedoch auf die Schnelle nichts gefunden. Bin aber der Meinung vor nicht alzu langer Zeit hier genau die Antwort auf deine Frage gelesen zu haben.
Danke für eure Antworten soweit.
Hatte das Forum auch schon durchsucht, aber nix gefunden.
Bin leider kein Profi - wie kann ich denn in der Registry nachschauen??
LG
Es gibt eine Klasse Registry bzw. RegistryKey.
Schau dir da mal die Beispiele dazu an wie man die benutzt, ist relativ simpel.
Du könntest dann schaun ob unter
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\11.0\Word\InstallRoot
ein Key namens Path existiert und nen Wert hat.
Da steht drin wohin dein Word installiert wurde.
Wenn das fehlt wirds vermutlich nicht drauf sein.
Wenn du nur prüfen möchtest ob irgendein Word installiert ist müßtest du das bissl anders machen... aber dawolltest du ja nicht. 🙂