2010-08-30 18:49:48 +0000 2010-08-30 18:49:48 +0000
18
18

Hoe simuleer ik een parallelle (LPT) Printer met een USB Printer?

Ik heb een aantal legacy software die alleen print op printers die zijn aangesloten via een LPT poort. De machine die ik moet gebruiken heeft echter geen parallelle poort. Plus mijn printer is een USB apparaat.

Hoe kan ik mijn computer laten denken dat mijn usb-printer is aangesloten op de lpt-poort?

Verder is dit voor een kantoor. Ik heb admin-rechten bij het implementeren van het werk, maar ik ben aan het filmen voor een oplossing die werkt terwijl een ‘gewone’ gebruiker wordt gelogd nadat alles is ingesteld.

Antwoorden (8)

21
21
21
2010-08-30 19:26:24 +0000

U kunt Windows misleiden door de USB-printer te gebruiken als een dummy “netwerk”-printer die is aangesloten op LPT1.

De USB-printer delen

Gebruik een gemakkelijk te onthouden naam, zoals “Printer”.

Sluit de gedeelde printer aan als LPT1

NET USE LPT1: \[Computer-Name]\Printer /PERSISTENT:YES
5
5
5
2012-10-26 15:44:27 +0000

Het gebruik van een USB-naar-parallelle adapter heeft geen zin. We hebben het hier over het gebruik van een zeer oude legacy software op hardware met alleen USB-aansluitingen. In mijn geval, een ZEBRA labelprinter.

De oplossing in mijn geval was.

  1. Installeer de USB-printer met zijn drivers (gewoon om te vinden op welke USB-poort is aangesloten)
  2. 2. Verander de driver poort in FILE (en maak de USB poort vrij)
  3. Installeer de USB poort met de drivers (om te zien op welke USB poort de printer is aangesloten). 3. Installeer een Algemeen / Alleen tekst stuurprogramma en verander de poort naar dezelfde logische USB-poort als in punt 1
  4. 4. Deel de Generieke /Text Only printer om deze gemakkelijk zichtbaar te maken in VBA
  5. Installeer de Microsoft Loopback adapter op een vast ongebruikt IP adres (anders is uw printer niet zichtbaar als de kabel wordt losgekoppeld)
  6. Installeer de Microsoft Loopback adapter op een vast ongebruikt IP adres. 6. Wijs een LPTx: poort toe zoals eerder uitgelegd via opdrachtregel (dit is voor elke SW die een oude LPT nodig heeft)

  7. Met enkele rijen code kunt u ASCII-codes naar de printer sturen zoals in het verleden.

Nu kunt u eenvoudig printen in VBA (getest met Windows 7 64-bit en ZM400 Zebra-printer) 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
2
2
2015-02-16 01:35:25 +0000

DOS-programma’s worden nog steeds gebruikt in de bedrijfswereld. Advies over hoe je ze goed kunt laten werken op een modern computerplatform is welig tiert op het web. Hier is wat voor mij werkte.

Het 16-bit DOS programma waarmee we moeten werken staat op een 32-bit Windows 2003 server die binnenkort zal worden verwijderd. Tot die tijd wordt een deel van het programma in kaart gebracht op twee 32-bit client machines van het primaire domein met Group Policy. Een snelkoppeling naar het .cmd-bestand dat het programma opstart wordt handmatig op de clients geplaatst, ook op het primaire domein. Het programma draait goed op Windows 8.1. Een beetje een compromis om zeker te zijn, maar de machines worden geüpgraded naar 64-bit Windows 8.1 wanneer het DOS-programma, dat draait vanaf het secundaire domein, met pensioen gaat.

Printen vanuit het programma vormt de grootste uitdaging. Er worden twee verschillende parallelle printers gebruikt met dit programma, maar het programma print slechts op een enkele poort en er is geen optie om dit gedrag te veranderen. Moet er een controle worden uitgevoerd op de laserprinter? Deze moet worden aangesloten op de poort LPT1. Moet er een datadump naar de dot-matrixprinter worden geprint? Deze moet ook op poort LPT1 worden aangesloten. Twee mensen werken dagelijks met dit programma, dus we gebruiken hun computers, één voor elke printer. Laten we de eerste printer installeren:

  • Als de computer een fysieke DB-25 (parallelle) poort heeft, kan deze in het BIOS worden uitgeschakeld. Windows 8.1 ondersteunt dit niet en we hebben het ook niet nodig.

  • Een Cables-to-Go model 16899 USB naar DB25 parallelle printeradapter wordt gebruikt om de printer aan te sluiten op de computer. De adapter wordt automatisch geïnstalleerd en wordt niet herkend als een parallel apparaat of LPT poort.

  • Open nu Apparaten en Printers. Klik op Printer toevoegen en selecteer De printer die ik wil is niet in de lijst opgenomen. Kies in het volgende dialoogvenster Een lokale printer of netwerkprinter met handmatige instellingen toevoegen en gebruik in het volgende dialoogvenster een bestaande poort. Selecteer een virtuele printerpoort voor USB, ofwel USB001 of USB002, uit de lijst en niet de LPT poortopties.

  • De eerste printer is een Panasonic KX-P1191 Multi-mode dot matrix printer. De printer staat niet in het dialoogvenster dat vraagt om een stuurprogramma en het bijwerken van de lijst door te klikken op Windows Update helpt niet. Een controle van de ondersteuningssite van Panasonic geeft aan dat de printer op dit punt volledig niet wordt ondersteund, maar een technische ondersteuningsspecialist van Panasonic heeft geholpen bij het uitzoeken van het pad dat heeft geleid tot het Epson FX Series 1(80) stuurprogramma dat bij Windows 8.1 is meegeleverd. Het werkt perfect.

Nu is de printer geïnstalleerd. Maar het staat op poort USB001 en het programma print alleen naar poort LPT1. De oplossing is relatief eenvoudig en kan direct worden geïntegreerd in het batchbestand dat wordt gebruikt om het programma te starten. Laten we een trucje uithalen op onze printer: we delen hem en printen op die manier naar LPT1.

  • Klik met de rechtermuisknop op de printer en kies Eigenschappen. Deel de printer, zet hem niet in de directory, maak een korte naam voor het delen, en zorg er dan voor dat de gebruiker van de client-machine in de groeps- of gebruikersnamenlijst onder het tabblad Beveiliging staat.

  • De twee mensen die naar deze printers gaan printen, maken mijn loonstrookje aan, dus ik heb ze Domeinbeheerrechten gegeven. Dat was misschien niet nodig. Beide zijn gebruikers op het primaire domein maar niet op het secundaire, en ik wilde geen tijd besteden aan het oplossen van het rechtenprobleem.

Pas nu het batchbestand aan en gebruik het goed gedocumenteerde netgebruikscommando om de printoplossing te implementeren:

@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>

Waarbij COMPUTER de naam van de computer is en PRINTER de gedeelde naam van de printer. De procedure werkte even goed op een tweede computer voor de HP LaserJet 1100 printer met behulp van de “HP LaserJet 1100 (MS)” driver die bij Windows 8.1.

– OPMERKINGEN –

Systeemfout 5:

Zorg ervoor dat de gebruiker wordt vermeld onder het beveiligingstabblad. “Iedereen” kan worden verwijderd. Zijn domeinbeheerrechten vereist voor de gebruiker? Waarschijnlijk niet, als alles vanuit één domein draait.

Systeemfout 66:

Controleer uw syntaxis. Je hebt waarschijnlijk de naam van de computer, de printer of misschien de dubbele punt gemist? Er is maar één dubbele punt nodig, per Microsoft-documentatie. Zal het toevoegen van een overbodige dubbele punt aan lpt1[:] een storing veroorzaken?

Alles over netto gebruik https://technet.microsoft.com/en-us/library/bb490717.aspx

2
2
2
2010-08-30 20:09:20 +0000

Kijk misschien eens naar WinPrint :

Neemt standaard printeruitvoer van een DOS-toepassing en stuurt deze door naar een standaard Windows-printer. Converteert codepagina’s, strooit lege pagina’s, ondersteunt BOX DRAWINGS chars. Werkt op alle Windows-platforms.

2
2
2
2014-08-27 08:13:02 +0000

Gebruik het DOS-printprogramma om uw beschikbare poorten naar de gewenste apparaten te manipuleren. U kunt het downloaden van deze lin https://www.dropbox.com/s/gdx05sckmbqnast/dosprint.exe?dl=0 (dos Print) https://www.dropbox.com/s/alf6hdd5fctepmo/dosprintui.exe?dl=0 (dos Print UI)

Voer eerst de dosprintui uit als beheerder en dubbelklik daarna op het pictogram van de dosprintui-bak, u kunt de lijst met beschikbare poorten voor het in kaart brengen krijgen, dubbelklik dan op lpt1 of in de set-knop en kies de gewenste printer om deze in kaart te brengen en klik op ok. BINGO nu kunt u afdrukken naar de LPT1-poort en uw usb-printer zal dat voor u afdrukken.

0
0
0
2017-12-06 15:24:37 +0000

Ik zat in dezelfde positie met op maat gemaakte zakelijke Clipper-gebaseerde software. Keek naar wat parallelle emulatiesoftware om af te drukken naar een usb-printer die een beetje werkte, maar hun eigen problemen had. Het overwinnen van de 64 Bit win10 no dos problemen was een echte uitdaging.

Ik vond Harbour HMG die, na het veranderen van een paar regels code de app software hercompilleerde naar 32 bit. Ik heb ook mijn apps data laten schrijven naar temp bestanden die ik pak met Microsoft Access om een aantal geweldige geformatteerde rapporten uit te brengen. Oh, BTW. Nu werken de apps in 64 Bit Windows 10 met grote verbeteringen in geheugen en snelheid. Ook heb ik de rapporten gestuurd naar usb line printers of inktjets of wat dan ook.

0
0
0
2010-08-30 19:03:35 +0000

Er zijn tal van “parallel aan usb-adapters” op de markt. Je kunt er een online krijgen voor ongeveer $10, en het is waarschijnlijk een goede plek om te beginnen.

0
0
0
2010-08-30 19:29:20 +0000

Je hebt niet gezegd welke hardware je gebruikt, maar aangenomen dat het een Wintel PC is, zou je er een generieke parallelle poortkaart voor moeten kunnen kopen voor bijna niets. Daarnaast kunt u het omleiden met behulp van NET USE, zoals voorgesteld door harrymc.