APIのGetPrinterを使ってもできますが、GetPrinterの場合OpenPrinterを使ってプリンタのハンドルを取得してからGetPrinterを使用することになります。OpenPrinterはNTの場合権限を設定しなければfalseが返却され失敗してしまうため、Win95系とWinNT系両方のOSで使えるものとなるとGetProfileStringを使用するのが簡単です。
DWORD dwRet;
char cPrtname[256];
AnsiString strErrmsg;
//現在の通常使うプリンタの取得
dwRet = GetProfileString("windows", "device", "", cPrtname, sizeof(cPrtname));
if (dwRet == 0){
strErrmsg = SysErrorMessage(GetLastError());
Application->MessageBox(strErrmsg.c_str(),"",MB_OK);
}
ShowMessage(cPrtname);
DownLoad bcbtips035.lzh 4KB(BCB5)