c# Word Dokument

Steffen543

Grünschnabel
Hallo,

Falls dieser Thread hier falsch ist, tut es mir Leid.
Ich bin neu und komm hier noch nicht so gut zu recht..

Zu meinem Problem, Ich versuche schon lange mit c# in Word Dokumente zu schreiben, jedoch immer ohne Erfolg, ich habe schon so ziemlich jedes Tutorial gemacht aber es funktioniert nie..
Hier ein Codeaus

Code:
Word.Application myWordApp = new Word.Application();
 
object Dateiname = @"C:\tmp\test.dotx";
object neueVorlage = false;
object DokumentenTyp = 0;
object Sichtbar = true;
 
Word.Document aDoc = myWordApp.Documents.Add(ref Dateiname, ref neueVorlage, ref DokumentenTyp, ref Sichtbar);
 
myWordApp.Visible = true;

myWordApp.Selection.TypeText("C# Word Tutorial");
aDoc.Activate();

Tutorial von http://www.tsql.de/csharp/csharp_word_office

Es erscheint immer die Fehlermeldung bei
Code:
myWordApp.Selection.TypeText("C# Word Tutorial");
--> Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.



Was mache ich falsch ?


Lieber Gruß,
Steffen
 

sheel

I love Asm
Hi und Willkommen bei tutorials.de,

Mach mal
myWordApp.Visible = true;
erst nach der Fehlerzeile (vor Activate).

Und gibt es die Datei C:\tmp\test.dotx ?
 

MCoder

Erfahrenes Mitglied
Hallo Steffen,

Offensichtlich wird "aDoc" nicht korrekt erzeugt. Hast du mal geprüft (Debugger), ob das Objekt null ist?

Der Code als solches sollte eigentlich funktionieren. Da erkenne ich jetzt keinen Fehler.

Welche Word Object Library hast du denn bei den Verweisen eingebunden? Die "Microsoft Word 9.0 Object Library" ist ja nun schon etwas betagt. Hast du auch eine using-Aweisung in deinem Code, um den Namespace zuzuweisen? Sonst solltest du statt "Word" besser " Microsoft.Office.Interop.Word" schreiben.

Gruß
MCoder
 

Steffen543

Grünschnabel
Hey,

Erstmal danke für eure Hilfe :)
Konnte das Problem jedoch selber lösen, naja was heißt lösen ich habs auf nem anderen Computer versucht und da geht es einwandfrei.. Installiere Visual Studio gerade neu auf meinem Arbeits-PC. Hoffe es klappt dann ;)

Gruß,
Steffen