Mengelola Printer
Shell API menyediakan fungsi yang dapat Anda gunakan untuk mengelola printer berjaringan. Jika file memiliki kata kerja cetak yang terkait dengannya, Anda dapat menggunakan perintah ShellExecuteEx untuk mencetaknya.
Manajemen Printer
Anda dapat mengelola printer pada sistem dengan fungsiSHInvokePrinterCommand. Fungsi ini memungkinkan Anda untuk:
- Pasang pencetak.
- Buka pencetak.
- Dapatkan properti printer.
- Buat tautan printer.
- Cetak halaman pengujian.
Mencetak File dengan ShellExecuteEx
Jika jenis file memiliki perintah cetak yang terkait dengannya, Anda dapat mencetak file dengan memanggil ShellExecuteEx dengan cetak sebagai kata kerja. Perintah ini sering sama dengan yang digunakan untuk perintah open, dengan penambahan indikator untuk perintah mencetak file pada aplikasi. Misalnya, file .txt dapat dicetak oleh Microsoft WordPad. Kata kerja terbuka untuk file .txt dengan demikian akan sesuai dengan sesuatu seperti perintah berikut:
"C:\Program Files\Windows NT\Accessories\Wordpad.exe" /p "%1"
Saat Anda menggunakan ShellExecuteEx untuk mencetak file .txt, WordPad membuka file, mencetaknya, lalu menutup, mengembalikan kontrol ke aplikasi. Fungsi sampel berikut mengambil jalur yang sepenuhnya memenuhi syarat, dan menggunakan ShellExecuteEx untuk mencetaknya, menggunakan perintah cetak yang terkait dengan ekstensi nama filenya.
#include <shlobj.h>
HINSTANCE PrintFile(LPCTSTR pszFileName)
{
SHELLEXECUTEINFO ShExecInfo;
HINSTANCE hInst;
// Fill the SHELLEXECUTEINFO array.
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = NULL;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = "print";
ShExecInfo.lpFile = pszFileName; // a fully qualified path
ShExecInfo.lpParameters = NULL;
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_MAXIMIZE;
ShExecInfo.hInstApp = NULL;
hInst = ShellExecuteEx(&ShExecInfo);
return hInst;
}