สคริปต์ชุด - การพิมพ์

นอกจากนี้ยังสามารถควบคุมการพิมพ์จากภายใน Batch Script ผ่านคำสั่ง NET PRINT

ไวยากรณ์

PRINT [/D:device] [[drive:][path]filename[...]]

Where / D: device - ระบุอุปกรณ์การพิมพ์

ตัวอย่าง

print c:\example.txt /c /d:lpt1

คำสั่งดังกล่าวจะพิมพ์ไฟล์ example.txt ไปยังพอร์ตขนาน lpt1

การควบคุมเครื่องพิมพ์บรรทัดคำสั่ง

สำหรับ Windows 2000 การตั้งค่าเครื่องพิมพ์จำนวนมาก แต่ไม่ใช่ทั้งหมดสามารถกำหนดค่าได้จากบรรทัดคำสั่งของ Windows โดยใช้ PRINTUI.DLL และ RUNDLL32.EXE

ไวยากรณ์

RUNDLL32.EXE PRINTUI.DLL,PrintUIEntry [ options ] [ @commandfile ]

โดยที่บางส่วนของตัวเลือกมีดังต่อไปนี้ -

  • /dl - ลบเครื่องพิมพ์ท้องถิ่น

  • /dn - ลบการเชื่อมต่อเครื่องพิมพ์เครือข่าย

  • /dd - ลบไดรเวอร์เครื่องพิมพ์

  • /e - แสดงการตั้งค่าการพิมพ์

  • /f[file] - ทั้งไฟล์ inf หรือไฟล์เอาต์พุต

  • /F[file] - ตำแหน่งของไฟล์ INF ที่ไฟล์ INF ระบุด้วย / f อาจขึ้นอยู่กับ

  • /ia - ติดตั้งไดรเวอร์เครื่องพิมพ์โดยใช้ไฟล์ inf

  • /id - ติดตั้งไดรเวอร์เครื่องพิมพ์โดยใช้ตัวช่วยสร้างไดรเวอร์เครื่องพิมพ์เพิ่ม

  • /if - ติดตั้งเครื่องพิมพ์โดยใช้ไฟล์ inf

  • /ii - ติดตั้งเครื่องพิมพ์โดยใช้ตัวช่วยสร้างเครื่องพิมพ์เพิ่มด้วยไฟล์ inf

  • /il - ติดตั้งเครื่องพิมพ์โดยใช้ตัวช่วยสร้างเครื่องพิมพ์เพิ่ม

  • /in - เพิ่มการเชื่อมต่อเครื่องพิมพ์เครือข่าย

  • /ip - ติดตั้งเครื่องพิมพ์โดยใช้วิซาร์ดการติดตั้งเครื่องพิมพ์เครือข่าย

  • /k - พิมพ์หน้าทดสอบไปยังเครื่องพิมพ์ที่ระบุไม่สามารถใช้ร่วมกับคำสั่งเมื่อติดตั้งเครื่องพิมพ์

  • /l[path] - เส้นทางต้นทางไดรเวอร์เครื่องพิมพ์

  • /m[model] - ชื่อรุ่นไดรเวอร์เครื่องพิมพ์

  • /n[name] - ชื่อเครื่องพิมพ์

  • /o - แสดงมุมมองคิวเครื่องพิมพ์

  • /p - แสดงคุณสมบัติเครื่องพิมพ์

  • /Ss - จัดเก็บการตั้งค่าเครื่องพิมพ์ลงในไฟล์

  • /Sr - เรียกคืนการตั้งค่าเครื่องพิมพ์จากไฟล์

  • /y - ตั้งค่าเครื่องพิมพ์เป็นค่าเริ่มต้น

  • /Xg - รับการตั้งค่าเครื่องพิมพ์

  • /Xs - ตั้งค่าเครื่องพิมพ์

ทดสอบว่ามีเครื่องพิมพ์อยู่หรือไม่

อาจมีบางกรณีที่คุณอาจเชื่อมต่อกับเครื่องพิมพ์เครือข่ายแทนเครื่องพิมพ์ท้องถิ่น ในกรณีเช่นนี้ควรตรวจสอบก่อนว่ามีเครื่องพิมพ์อยู่หรือไม่ก่อนพิมพ์

การมีอยู่ของเครื่องพิมพ์สามารถประเมินได้ด้วยความช่วยเหลือของ RUNDLL32.EXE PRINTUI.DLL ซึ่งใช้เพื่อควบคุมการตั้งค่าเครื่องพิมพ์ส่วนใหญ่

ตัวอย่าง

SET PrinterName = Test Printer
SET file=%TEMP%\Prt.txt
RUNDLL32.EXE PRINTUI.DLL,PrintUIEntry /Xg /n "%PrinterName%" /f "%file%" /q

IF EXIST "%file%" (
   ECHO %PrinterName% printer exists
) ELSE (
   ECHO %PrinterName% printer does NOT exists
)

คำสั่งดังกล่าวจะดำเนินการดังต่อไปนี้ -

  • ขั้นแรกจะเป็นการตั้งชื่อเครื่องพิมพ์และตั้งชื่อไฟล์ซึ่งจะเก็บการตั้งค่าของเครื่องพิมพ์ไว้

  • คำสั่ง RUNDLL32.EXE PRINTUI.DLL จะใช้เพื่อตรวจสอบว่าเครื่องพิมพ์มีอยู่จริงหรือไม่โดยส่งการตั้งค่าการกำหนดค่าของไฟล์ไปยังไฟล์ Prt.txt