Announcement

Collapse
No announcement yet.

Messagebox und Word (Quellcode formatiert dargestellt)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Messagebox und Word (Quellcode formatiert dargestellt)

    Hallo,

    ich habe folgendes Problem:

    In einer Prozedur (nachfolgend aufgeführt) starte ich Word und dort einen Serienbrief.
    Dann erfolgt wieder der DISCONNECT zu Word, wobei allerdings Word selbst offen bleibt. Am Ende erfolgt eine Abfrage mit APPLICATION.MESSAGEBOX, wo etwas geschehen soll, wenn der Serienbriefdruck erfolgreich war.
    Der Ablauf sollte sein, das zuerst in Word der Serienbriefdruck durchgeführt werden soll und die Messagebox im Prinzip unter Word liegen sollte. Erst wenn man Word schließt oder mein Delphiprogramm in den Vordergrund holt, soll die Messagebox erscheinen. Z.Zt. sieht es aber so aus, das Word mein Delphiprogramm verdeckt, was auch ok ist, aber die Messagebox auf Word liegt. Und das möchte ich ansich vermeiden.
    Hat da jemand einen Rat für mich?

    <PRE>
    Prozedur .....
    try
    try
    Template := EmptyParam;
    NewTemplate := True;
    try
    Wordapplication.Connect;
    except
    MessageDlg('Word may not be installed', mtError, [mbOk], 0);
    Abort;
    end;
    Template := EmptyParam;
    NewTemplate := False;
    ov_filename:=od_documents.FileName;
    wordapplication.Documents.Open(ov_filename,
    template,template,template,template,template,
    template,template,template,template);
    {Turn Spell checking of because it takes a long time if enabled and slows down Winword}
    WordApplication.Options.CheckSpellingAsYouType := False;
    WordApplication.Options.CheckGrammarAsYouType := False;
    {verbindung mit dem aktuellen dokument}
    WordDocument.ConnectTo(WordApplication.ActiveDocum ent);
    Wordapplication.Visible := True;
    ov_pause:=true;
    aMailMerge:=WordDocument.MailMerge;
    aMailMerge.Destination:=wdSendToNewDocument
    aMailMerge.Execute(ov_pause);
    ov_Save:=false;
    WordApplication.Documents.Close(ov_Save,template,t emplate);
    WordDocument.Disconnect;
    except
    on E: Exception do ShowMessage(E.Message);
    end;
    finally
    try
    WordApplication.Disconnect;
    if application.MessageBox(pchar(SMES_QUESTION_PRINT_S UCCESFULL),
    pchar(SCAP_QUESTION),
    mb_yesno+mb_defbutton1+mb_iconquestion)=mrYes then begin
    ......
    ......
    end
    except
    on e: Exception do pro_err_message(e,'');
    end;
    end;
    </PRE>

  • #2
    Versuch 1: Word vom Disconnet minimieren.<br>
    Versuch 2: Das eigene Fenster mit http://www.entwickler-forum.de\webx?128@@.ee8914b in den Vordergrund holen.<p>
    Schöne Grüße, mario NOac
    Schöne Grüße, Mario

    Comment

    Working...
    X