当前页面位置: » 丰搜网 » 文档中心 » 详细内容
delphi必学技巧:枚举打印机
在某些情况下,我们需要枚举网内的打印机,试试以下的代码,很有可能帮得了你。
| using system; using system.runtime.interopservices; using system.runtime.serialization; namespace sample.getprinter { class app { static void main(string[] args) { console.writeline("请输入你想搜索类型的序号:"); console.writeline("1. default printer(only win95,win98,winme)\n2. enumerates the locally installed printers;\n3. enumerates the list of printers to which the user has made previous connections;\n4. enumerates the printer identified by name.;\n5. enumerates.network printers and print servers in the computer's domain;\n6. enumerates printers that have the shared attribute;\n7. enumerates.network printers in the computer's domain;\n=========================="); int pt =0; try { pt=int32.parse(console.readline()); } catch(exception e) { console.writeline("错误信息: {0}",e.message); return; } printer_enum printerkind = getprintercontype(pt); printersearcher p = new printersearcher(); printersearcher.printerinfo[] printers = p.search(printerkind); foreach(printersearcher.printerinfo pi in printers) { console.writeline("=====================================\n打印机名: {0}\n描叙:: {1}\n注释: {2}\n=====================================\n", pi.name, pi.description, pi.comment); } } static printer_enum getprintercontype(int ins) { switch(ins) { case 1: return printer_enum.default ; case 2: return printer_enum.local; case 3: return printer_enum.connections; case 4: return printer_enum.name; case 5: return printer_enum.remote; |