2012-06-05 17 views
6

Używam Delapi powłoki ShellExecute, aby spróbować drukować na wybranej przez użytkownika drukarce, a nie na drukarce domyślnej. Próbuję dowiedzieć się składni polecenia za pomocą czasownika printto.Jakie są parametry "printto" przy użyciu shellexecute?

Jak wyglądałaby przykładowa instrukcja wykonywania powłoki, gdybym chciał wydrukować plik manual.pdf na urządzeniu HP Laser Jet 4 z adresem IP 192.168.1.49?

(to tylko przykład, ale jeśli możesz mi pomóc, mogę go stamtąd)

+2

Być może http://msdn.microsoft.com/en-us/library/bb776883(VS.85).aspx może być przydatny? –

+0

Tak, znalazłem wczoraj coś nieużytecznego na MSDN i pomyślałem, że to ostatnie słowo w tej sprawie. Dzięki! –

+0

Podaj adres sieciowy drukarki w parametrze argumentów. –

Odpowiedz

3

Trzeba przekazać adres sieciowy sieci drukarki w parametru arguments.

ShellExecute(
    WindowHandle, 
    'printto', 
    PChar(DocumentName), 
    PChar(PrinterNetworkAddress), 
    nil, 
    SW_HIDE 
); 
+1

Jak uzyskać adres sieciowy/jaka jest różnica między tym, a tym, co jest zwracane jako port w Printer.GetPrinter? Kod mjn działa dla mnie, ale wolałbym go użyć. –

+0

W powyższym przykładzie 192.168.1.49 to adres sieciowy drukarki –

Powiązane problemy