ฉันจะจำลองเครื่องพิมพ์แบบขนาน (LPT) กับเครื่องพิมพ์ USB ได้อย่างไร


18

ฉันมีซอฟต์แวร์ดั้งเดิมที่พิมพ์บนเครื่องพิมพ์ที่เชื่อมต่อผ่านพอร์ต LPT เท่านั้น เครื่องที่ฉันต้องการใช้ แต่ไม่มีพอร์ตขนาน รวมทั้งเครื่องพิมพ์ของฉันคืออุปกรณ์ USB

ฉันจะหลอกให้คอมพิวเตอร์คิดว่าเครื่องพิมพ์ usb ของฉันเชื่อมต่อกับพอร์ต lpt ได้อย่างไร

นอกจากนี้สำหรับสำนักงาน ฉันจะมีสิทธิ์ของผู้ดูแลระบบเมื่อใช้งานแก้ไข แต่ฉันถ่ายภาพเพื่อหาวิธีแก้ปัญหาที่ทำงานในขณะที่ผู้ใช้ 'ปกติ' ถูกบันทึกไว้หลังจากทุกอย่างถูกตั้งค่า


1
ฉันคิดว่าคุณหมายถึงพอร์ตLPTไม่ใช่พอร์ต LTP LPT ย่อมาจาก "Line Print Terminal" และมีความหมายเหมือนกันกับ "ขนาน" เมื่ออ้างถึงพอร์ตเครื่องพิมพ์ น่าสนใจว่ามีแท็ก LTP สามารถเปลี่ยนแปลงได้หรือไม่ หรือบางทีฉันก็ขาดอะไรไป
boot13

@ boot13 คุณถูกต้อง
Dane O'Connor

คำตอบ:


21

คุณสามารถหลอกลวง Windows โดยใช้เครื่องพิมพ์ USB เป็นเครื่องพิมพ์ "เครือข่าย" หลอกตาที่เชื่อมต่อกับ LPT1

แบ่งปันเครื่องพิมพ์ USB

ใช้ชื่อที่จดจำได้ง่ายเช่น "เครื่องพิมพ์"

เชื่อมต่อเครื่องพิมพ์ที่ใช้ร่วมกันเป็น LPT1

NET USE LPT1: \\[Computer-Name]\Printer /PERSISTENT:YES

5
คุณไม่จำเป็นต้องยุ่งกับ Loopback Adapter เพียงติดตั้งเครื่องพิมพ์ตามปกติโดยใช้การเชื่อมต่อ USB จากนั้นแบ่งปัน จากนั้นใช้ NET USE ดังกล่าวข้างต้น
อลัน B

+1 สำหรับNET USEเคล็ดลับ"แชร์และ" ถึงแม้ว่าอะแดปเตอร์ย้อนกลับไม่จำเป็น สิ่งหนึ่งที่ควรทราบหากผู้ใช้ไม่มีรหัสผ่านในบัญชีของพวกเขาคุณต้องแก้ไขนโยบายความปลอดภัยท้องถิ่น (หรือคีย์รีจิสทรีที่เหมาะสม) เพื่อให้สามารถใช้งานได้
afrazier

ฉันจัดการเพื่อทำตามทุกขั้นตอน แต่ถ้าพีซีของฉันไม่มีพอร์ตขนานเมื่อฉันใช้net use LPT2 \\Computer-9313\Parallel /PERSISTENT:YESฉันจะได้The command completed succesfullyแต่ฉันไม่เห็น LPT2 บนอุปกรณ์ฮาร์ดแวร์ดังนั้นฉันจึงไม่ทราบที่อยู่ของมัน
Andres

1
@Andres คุณลืมพิมพ์เครื่องหมายอัฒภาคหลังจาก LPT2 เช่นด้านบนหรือไม่
phuclv

1
นั่นเป็นลำไส้ใหญ่ไม่อัฒภาค (VS)
เอียนแมคอินทอช

5

การใช้ USB กับอะแดปเตอร์แบบขนานนั้นไม่สมเหตุสมผล ที่นี่เรากำลังพูดถึงการใช้ซอฟต์แวร์เก่าที่เก่าแก่บนฮาร์ดแวร์ที่มีการเชื่อมต่อ USB เท่านั้น ในกรณีของฉันเครื่องพิมพ์ฉลาก ZEBRA

ทางออกในกรณีของฉันคือ

  1. ติดตั้งเครื่องพิมพ์ USB พร้อมไดรเวอร์ (เพื่อค้นหาว่าพอร์ต USB เชื่อมต่ออยู่ที่ใด)
  2. เปลี่ยนพอร์ตของไดรเวอร์เป็น FILE (และเพิ่มพอร์ต USB)
  3. ติดตั้งไดรเวอร์ Generic / Text Only และเปลี่ยนพอร์ตเป็นพอร์ต USB แบบโลจิคัลเดียวกับที่เห็นในจุดที่ 1
  4. แชร์เครื่องพิมพ์ Generic / Text Only เพื่อให้มองเห็นได้ง่ายใน VBA
  5. ติดตั้งอะแดปเตอร์ Microsoft Loopback บนที่อยู่ IP ที่ไม่ได้ใช้คงที่ (ไม่เช่นนั้นเครื่องพิมพ์ของคุณจะไม่ปรากฏให้เห็นเมื่อถอดสายเคเบิลออก)
  6. กำหนด LPTx: พอร์ตตามที่อธิบายไว้ก่อนหน้าโดยบรรทัดคำสั่ง (นี่คือสำหรับทุก SW ที่ต้องการ LPT เก่า)

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

ตอนนี้คุณสามารถพิมพ์ VBA ได้อย่างง่ายดาย (ทดสอบด้วย Windows 7 64-bit และเครื่องพิมพ์ ZM400 Zebra)

Open "\\Kb\ZM400" For Output As #1       'Kb = computer Name; ZM400 = Shared printer name
For rows = 1 To 37 ' send the first 37 rows of ASCII codes from the worksheet "STRINGS"
    Print #1, Worksheets("STRINGS").Cells(rows, 1).Value
Next
Close #1

2

บางทีตรวจสอบWinPrint :

ใช้เอาต์พุตพรินเตอร์มาตรฐานที่ผลิตโดยแอ็พพลิเคชัน DOS และส่งต่อไปยังเครื่องพิมพ์ดีฟอลต์ของ Windows แปลงหน้ารหัสแถบหน้าว่างสนับสนุนตัวอักษร BOX DRAWINGS ทำงานได้บนแพลตฟอร์ม Windows ทั้งหมด


2

ใช้โปรแกรมการพิมพ์ DOS เพื่อจัดการพอร์ตที่มีให้กับอุปกรณ์ที่ต้องการ คุณสามารถดาวน์โหลดได้จากลิงค์นี้ https://www.dropbox.com/s/gdx05sckmbqnast/dosprint.exe?dl=0 (พิมพ์ดอส)

https://www.dropbox.com/s/alf6hdd5fctepmo/dosprintui.exe?dl=0 (dos Print UI)

ขั้นแรกให้เรียกใช้ dosprint และ dosprintui ในฐานะผู้ดูแลระบบหลังจากนั้นดับเบิลคลิกที่ไอคอนถาด dosprintui คุณสามารถดูรายการพอร์ต availble เพื่อทำแผนที่จากนั้นคลิกสองครั้งที่ lpt1 หรือในปุ่มตั้งค่าแล้วเลือกเครื่องพิมพ์ที่คุณต้องการเพื่อทำแผนที่ ตกลง. BINGO ในตอนนี้คุณสามารถพิมพ์ไปยังพอร์ต LPT1 และเครื่องพิมพ์ usb ของคุณจะพิมพ์ให้คุณ


2

โปรแกรม DOS ยังคงใช้อยู่ในโลกของธุรกิจ คำแนะนำเกี่ยวกับวิธีทำให้พวกเขาทำงานอย่างถูกต้องบนแพลตฟอร์มการคำนวณที่ทันสมัยนั้นอาละวาดบนเว็บ นี่คือสิ่งที่ทำงานให้ฉัน

โปรแกรม DOS 16 บิตที่เราจำเป็นต้องทำงานกับอยู่บนเซิร์ฟเวอร์ Windows 2003 แบบ 32 บิตที่จะถูกลบในไม่ช้า จนกว่าจะถึงตอนนั้นการแชร์ไปยังโปรแกรมจะถูกแมปบนเครื่องไคลเอนต์ 32 บิตสองเครื่องจากโดเมนหลักที่มีนโยบายกลุ่ม ทางลัดไปยังไฟล์. cmd ที่เริ่มโปรแกรมจะถูกวางลงบนไคลเอ็นต์ด้วยตนเองบนโดเมนหลัก โปรแกรมทำงานได้ดีบน Windows 8.1 มั่นใจว่าจะมีการประนีประนอมเล็กน้อย แต่เครื่องจะได้รับการอัพเกรดเป็น Windows 8.1 แบบ 64 บิตเมื่อโปรแกรม DOS ซึ่งทำงานจากโดเมนที่สองถูกยกเลิกการใช้งาน

การพิมพ์จากโปรแกรมนำเสนอความท้าทายที่ยิ่งใหญ่ที่สุด เครื่องพิมพ์คู่ขนานที่แตกต่างกันสองเครื่องใช้กับโปรแกรมนี้ แต่โปรแกรมจะพิมพ์ไปที่พอร์ตเดียวเท่านั้นและไม่มีตัวเลือกให้เปลี่ยนพฤติกรรมนี้ ต้องการพิมพ์เช็คไปยังเครื่องพิมพ์เลเซอร์หรือไม่ จำเป็นต้องเชื่อมต่อกับพอร์ต LPT1 ต้องการพิมพ์ดัมพ์ข้อมูลไปยังเครื่องพิมพ์ dot matrix หรือไม่? จำเป็นต้องเชื่อมต่อกับพอร์ต LPT1 เช่นกัน คนสองคนทำงานกับโปรแกรมนี้ทุกวันดังนั้นเราจะใช้คอมพิวเตอร์หนึ่งเครื่องสำหรับเครื่องพิมพ์แต่ละเครื่อง มาติดตั้งเครื่องพิมพ์ตัวแรก:

  • หากคอมพิวเตอร์มีพอร์ต DB-25 (ขนาน) จริงคุณสามารถปิดการใช้งานได้ใน BIOS Windows 8.1 จะไม่รองรับและเราไม่ต้องการมัน

  • Cable-to-Go รุ่น 16899 อะแดปเตอร์เครื่องพิมพ์แบบขนาน USB กับ DB25 ใช้สำหรับเชื่อมต่อเครื่องพิมพ์กับคอมพิวเตอร์ อะแดปเตอร์จะติดตั้งโดยอัตโนมัติและไม่ได้รับการยอมรับว่าเป็นอุปกรณ์แบบขนานหรือพอร์ต LPT

  • ตอนนี้เปิดอุปกรณ์และเครื่องพิมพ์ คลิกเพิ่มเครื่องพิมพ์แล้วเลือกเครื่องพิมพ์ที่ฉันต้องการไม่มีอยู่ในรายการ ในบทสนทนาถัดไปเลือกเพิ่มเครื่องพิมพ์ท้องถิ่นหรือเครื่องพิมพ์เครือข่ายที่มีการตั้งค่าด้วยตนเองและในบทสนทนาถัดไปให้ใช้พอร์ตที่มีอยู่ เลือกพอร์ตเครื่องพิมพ์เสมือนสำหรับ USB ทั้ง USB001 หรือ USB002 จากรายการไม่ใช่ตัวเลือกพอร์ต LPT

  • เครื่องพิมพ์เครื่องแรกคือเครื่องพิมพ์ dot matrix multi-mode ของ Panasonic KX-P1191 เครื่องพิมพ์ไม่อยู่ในรายการในกล่องโต้ตอบที่ขอไดรเวอร์และอัปเดตรายการโดยการคลิก Windows Update ไม่ได้ช่วยอะไร การตรวจสอบเว็บไซต์สนับสนุนของพานาโซนิคระบุว่าเครื่องพิมพ์ไม่ได้รับการสนับสนุนอย่างสมบูรณ์ในขณะนี้ แต่ผู้เชี่ยวชาญด้านการสนับสนุนทางเทคนิคของพานาโซนิคช่วยไขปริศนาเส้นทางที่นำไปสู่ไดรเวอร์ Epson FX Series 1 (80) ที่มาพร้อมกับ Windows 8.1 มันทำงานได้อย่างสมบูรณ์

ตอนนี้ติดตั้งเครื่องพิมพ์แล้ว แต่มันอยู่บนพอร์ต USB001 และโปรแกรมจะพิมพ์ไปยังพอร์ต LPT1 เท่านั้น การแก้ปัญหาค่อนข้างตรงไปตรงมาและสามารถรวมเข้ากับแบ็ตช์ไฟล์ที่ใช้ในการเริ่มโปรแกรม มาเรียนที่โรงเรียนเก่ากันเถอะเล่นกับเครื่องพิมพ์ของเรา: เราจะแชร์และพิมพ์ไปที่ LPT1

  • คลิกขวาที่เครื่องพิมพ์และเลือกคุณสมบัติ แชร์เครื่องพิมพ์ไม่แสดงรายการไว้ในไดเรกทอรีสร้างชื่อแชร์สั้น ๆ เพื่อวัดผลที่ดีจากนั้นตรวจสอบให้แน่ใจว่าผู้ใช้ของเครื่องไคลเอ็นต์อยู่ในรายการกลุ่มหรือชื่อผู้ใช้ภายใต้แท็บความปลอดภัย

  • คนสองคนที่จะพิมพ์ไปยังเครื่องพิมพ์เหล่านี้สร้างเงินเดือนของฉันดังนั้นฉันจึงให้สิทธิ์ผู้ดูแลระบบโดเมนแก่พวกเขา นั่นอาจไม่จำเป็น ทั้งสองเป็นผู้ใช้ในโดเมนหลัก แต่ไม่ใช่โดเมนรองและฉันไม่ต้องการใช้เวลาในการแก้ไขปัญหาสิทธิ์

ตอนนี้แก้ไขไฟล์แบตช์และใช้คำสั่ง net use ที่มีเอกสารที่ดีเพื่อใช้โซลูชันการพิมพ์:

@echo off
::delete the printer
net use lpt1 /delete
::add the printer
net use lpt1 \\\COMPUTER\PRINTER /persistent:yes
::fire up the nasty ol' DOS program
<existing syntax used to start the program>

โดยที่ COMPUTER เป็นชื่อของคอมพิวเตอร์และ PRINTER เป็นชื่อที่ใช้ร่วมกันของเครื่องพิมพ์ กระบวนการทำงานได้ดีเท่ากันบนคอมพิวเตอร์เครื่องที่สองสำหรับเครื่องพิมพ์ HP LaserJet 1100 โดยใช้ไดรเวอร์ "HP LaserJet 1100 (MS)" ที่มาพร้อมกับ Windows 8.1

- หมายเหตุ -

ข้อผิดพลาดระบบ 5:

ตรวจสอบให้แน่ใจว่าผู้ใช้อยู่ในรายการภายใต้แท็บความปลอดภัย "ทุกคน" สามารถลบได้ จำเป็นต้องมีสิทธิ์ผู้ดูแลระบบโดเมนสำหรับผู้ใช้หรือไม่ อาจไม่หากทุกอย่างทำงานจากโดเมนเดียว

ข้อผิดพลาดระบบ 66:

ตรวจสอบไวยากรณ์ของคุณ คุณอาจสะกดชื่อคอมพิวเตอร์เครื่องพิมพ์หรืออาจพลาดเครื่องหมายโคลอน? ต้องการหนึ่งโคลอนเท่านั้นตามเอกสารของ Microsoft การเพิ่มโคลอนที่ไม่จำเป็นลงใน lpt1 [:] จะทำให้เกิดความล้มเหลวหรือไม่

ทุกอย่างเกี่ยวกับการใช้เน็ต: https://technet.microsoft.com/en-us/library/bb490717.aspx


0

มีจำนวนมาก "ขนานกับอะแดปเตอร์ usb" ในตลาด คุณสามารถรับออนไลน์ได้ประมาณ $ 10 และอาจเป็นจุดเริ่มต้นที่ดี


ปัญหาไม่ได้ทำให้เครื่องพิมพ์เชื่อมต่อกับคอมพิวเตอร์ แต่ติดเข้ากับคอมพิวเตอร์ ปัญหาคือการทำให้เครื่องพิมพ์ USB ทำหน้าที่เหมือนกับเชื่อมต่อกับพอร์ต LTP (พอร์ต LTP เสมือน)
Dane O'Connor

แต่เขาไม่มีพอร์ตขนานและมีเครื่องพิมพ์ USB
เดวิดบอกว่าคืนสถานะโมนิก้า

0

คุณยังไม่ได้พูดว่าฮาร์ดแวร์ใดที่คุณใช้ แต่สมมติว่าเป็น Wintel PC คุณควรซื้อการ์ดพอร์ตขนานทั่วไปสำหรับติดกับอะไรก็ได้ นอกจากนั้นคุณสามารถเปลี่ยนเส้นทางโดยใช้ NET USE ตามที่แนะนำโดย harrymc


0

ฉันอยู่ในตำแหน่งเดียวกันกับซอฟต์แวร์ Clipper ที่ออกแบบตามธุรกิจที่กำหนดเอง ดูซอฟต์แวร์การจำลองแบบขนานเพื่อพิมพ์ไปยังเครื่องพิมพ์ usb ซึ่งทำงานได้บ้าง แต่มีปัญหาของตัวเอง การเอาชนะ win10 64 บิตโดยไม่มีปัญหาเรื่อง DOS เป็นความท้าทายที่แท้จริง

ฉันพบ Harbour HMG ซึ่งหลังจากเปลี่ยนโค้ดไม่กี่บรรทัดแล้วคอมไพล์ซอฟต์แวร์แอพใหม่เป็น 32 บิต ฉันยังมีแอพของฉันเขียนข้อมูลไปยังไฟล์ temp ซึ่งฉันใช้กับ Microsoft Access เพื่อจัดทำรายงานที่จัดรูปแบบที่ยอดเยี่ยม โอ้ BTW ตอนนี้แอพทำงานใน 64 บิต windows 10 ด้วยการปรับปรุงที่สำคัญในหน่วยความจำและความเร็ว นอกจากนี้ฉันยังมีรายงานที่ส่งไปยังเครื่องพิมพ์สาย usb หรือหัวพ่นหมึกหรืออะไรก็ตามที่ฉันเลือก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.