C#获取打印机状态+API函数详解

上传人:博****1 文档编号:487686043 上传时间:2022-11-27 格式:DOCX 页数:18 大小:29.32KB
返回 下载 相关 举报
C#获取打印机状态+API函数详解_第1页
第1页 / 共18页
C#获取打印机状态+API函数详解_第2页
第2页 / 共18页
C#获取打印机状态+API函数详解_第3页
第3页 / 共18页
C#获取打印机状态+API函数详解_第4页
第4页 / 共18页
C#获取打印机状态+API函数详解_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《C#获取打印机状态+API函数详解》由会员分享,可在线阅读,更多相关《C#获取打印机状态+API函数详解(18页珍藏版)》请在金锄头文库上搜索。

1、sn ytm;using System.olecioseeric;usigSysem.monetMoe;sg ytem.Dat;using Syem.Draig;us Sysm.Liq;sing Sstem.Tex;usig Syst.Wnows.Fors;usg Sysem.Runte.InteopServies;usin Sysm.Dignostic;ing SstemDringrintng;amspactestpriner2 ubicpria ls Frm1: orm #regon 预定义类型 lagsAtribe pubc enPterEnmFlgs RINTE_ENM_DEFAUT

2、=00000001, PRNT_EN_CA = x00002, INTENM_CONNECTIONS x0000, PRNTERENM_AVORITE = x0000004, PRNTE_ENUM_NA 0000000, PRINR_NUM_REMOTE = 0x000010, PRITER_EUM_SHED= 0x0000020, PRITR_N_NETWORK 00004, PRNER_NMEXD = x0004000, PRNTER_M_CONTAIER =0x0000800, PTER_ENUM_CNMSK x0f000, PRINTERENUIO = 0x000000, PNTER_

3、M_CO2 x0, PINTE_ENUMION3 = 00004000, INTRENU_ICN4 x008000, PRNTER_EN_IN5 = 0x10000, RINTERNUM_ICO6 =0x000, PRITERENUM_ICON7 =0x004000, PINTR_NUMCON = 0x008000, RINTE_HIDE = 10000 tucLayout(LayoutKi.Seqenal) pblc stut PRNTR_INFO_2 MaraAs(Unmanaedy.LPTSr) ubli tring Srvee; ashAs(UnmagedTye.PTtr) publi

4、c sri pPrinterNae; Marshs(nmanaedye.PTSt) lic strigphareame; MarslAs(UnmangedTe.LPTtr) ublic tring portae; Marshls(Umgeye.LTStr) pblc string DivrName; Mrshals(UnmanedType.T) pblc srn pComment; MashalAs(UmanagedTypeStr) publi trngpLoctio; ubic Intr pDevMod; Mrhls(UmaagedTyp.PTStr) public tring Sepile

5、; MarshlAs(UnmnaedType.LTSt) publi stri pntrocesso; MarshlAs(UnmanageTye.LPTStr) puli ri pattyp; MarsaAs(Umangedype.LPTStr) pubic g pParaters; blic tPtSeurityDecriptr; plc intAttibut; pul uint Pity; pblicuntfaultioiy; ublic uint StarTime; ublic uint UntlTime; public ut Status; pubic uint cJob; ubic

6、uint AveragePM; ndregin #reion 引用 WindowsAPI /引用AP声明 DllImport(wino.dr,ChaSet ChaS.Auto,SetLastErr= tr) tun: arshalAs(UnagTp.oo) ublicstati exernboo Enumrintes( rinerEnumlgs lags, string Name, intLeel, IntP pPriterEnum, uit bBu, f untcbNee, refuint pcReture ); #endrgin / 遍历打印机 / / / llImr(Use32.ll)

7、pubic staticxten in sBox(inh,tring m, tringc, t tpe); pu Frm1() nializeCompnnt(); piae oid buton1_Click(objct sen, entArgs e) PRINTR_NFO_2 Ino2 nu; int cbeeded=; icRetured ; boolre = EnumPriters(PrinteEumFlas.PRINTERENUM_LOCA, ul, 2,ntPtr.ero, 0,ref cbeeed, ref curnd); Intt Adr =arhal.AloHGlobal((in

8、t)cbNeded); re = EumPntrs(PiterEnuFlag.PRITERENM_LOA,nul, 2, pddr, cbNeeded,ref cbNeded, refeturnd); i (ret) Inf= nwRNTE_INO_2cRered; toffset pAddr.Int32(); (t = 0; i cReture; i+) Ifo2i (INE_F2)Marsal.PtroStructr(new ntPt(ofet), tyeof(PITE_INF_2)); ofse += MarshalSizeOf(of(PRINER_INF_2)); tis.listox1.Items.Add(打印机 Inoi.rinteNe +

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号