?
Ha, läuft. Danke nochmal. Hier die Lösung:
void __fastcall TFormCerti::Button1Click(TObject *Sender)
{
ThePrinter = Printer();
// Funktionsvariablen
Variant vWhat;
Variant vBookmark;
OleVariant Filename;
Variant Save = false;
AnsiString Name = "Name";
AnsiString Start = "Start";
AnsiString Ende = "Ende";
AnsiString USER = "USER";
AnsiString PASSWORD = "PASSWORD";
AnsiString Datum = "Datum";
if (!PrinterSelect) {
if (PrinterSetupDialog1->Execute()) {
PrinterSelect = true;
}
}
if (PrinterSelect) {
if (RadioGroup1->ItemIndex == 0) {
Filename = ExtractFilePath(ParamStr(0))+"seavis_password_5_DE_xxx.doc";
}
else {
Filename = ExtractFilePath(ParamStr(0))+"seavis_password_5_EN_xxx.doc";
}
WordApplication1->Connect();
WordApplication1->Documents->OpenOld(Filename,EmptyParam, EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam);
AnsiString t =WordApplication1->ActivePrinter;
WordDocument1->ConnectTo(WordApplication1->ActiveDocument);
WideString dummy = ThePrinter->Printers->Strings[ThePrinter->PrinterIndex];
WordApplication1->ActivePrinter = dummy.c_bstr() ;
// WordApplication1->Visible = true;
vWhat = wdGoToBookmark;
if (EditAnrede->Text == "" || EditAnrede->Text == "-" || EditAnrede->Text == " ") {
vBookmark = Name.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(Form_Main->EditName->Text));
}
else {
vBookmark = Name.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(EditAnrede->Text + " " + Form_Main->EditName->Text));
}
vBookmark = Start.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(EditStart->Text));
vBookmark = Ende.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(EditEnde->Text));
vBookmark = USER.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(Form_Main->PwName->Text));
vBookmark = PASSWORD.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(Form_Main->PwCRC->Caption));
vBookmark = Datum.c_str();
WordApplication1->Selection->GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
WordApplication1->Selection->TypeText(StringToOleStr(EditDatum->Text));
WordDocument1->PrintOut();
Sleep(3000);
WordDocument1->Close(Save, Save ,Save);
WordDocument1->Disconnect();
WordApplication1->Quit();
WordApplication1->Disconnect();
}
}
Nicht schön aber läuft.