OLE Auto and winword
You didn't say what version of winword or delphi and the answer
varies.
Word 8
Application.Dialogs(wdDialogFilePrint).execute
or
MyDialog := Application.Dialogs(88);
MyDialog.execute;
Or even
Application.ActivePrinter := "Printer on Port";
Word 7 - you can do it in a called macro
(syntax not guaranteed)
myobject.call("template.macro");
macro
Dim mydialog as FilePrint
GetCurValues mydialog
Dialog mydialog
FilePrint = mydialog
or
wordbasic.fileprintsetup([.Printer="Printer on Port",
DonotsetasSysDefault=1])