Duzo czasu poswiecilem na szukanie rozwiazania w internecie.
Jedni pisza ze mozna to zrobic w autoexec.bat tylko nie pisza jak, inni kaza
napisac programik w assemblerze (nie umiem, odpada), inni jeszcze proponuja
sciagnac jakis program prn2file, Microsoft proponuje uzyc
"net use lpt1: \\serwer drukarki\udział wydruku"
tylko ze w moim przypadku nie wiem co mam podac jako serwer drukarki a co
jako udzial wydruku (w ustawieniach moich drukarek nie ma takich pojec)
Intuicyjnie czuje ze sprawa jest bardzo prosta tylko nie wiem jak sie do
tego zabrac.
Prosze o jakakolwiek sugestie w tym temacie.
--
Arek
Jezeli jest to baza MySQL, to tak:
1. udostepniasz drukarke PDF jako Drukarka
2. tworzysz plik drukuj.bat, a w nim:
net use lpt1: \\nazwa_twojego_laptopa\drukarka
gdzie nazwa_twojego_laptopa to nie Toshiba Satellite L300;)
3. drukujesz
Jezeli baza jest rozna od MySQL, to robisz tak, jak powyzej:)
napisalem w pliku bat :
net use lpt1: \\Poczta Nowa\drukarka
"Poczta Nowa" jest nazwa mojego komputera
niestety daje komunikat:
Wysapil blad systemu 66
Typ zasobu sieciowego jest niepoprawny
robilem rozne proby ale rezulta ten sam, nie wiem co z tym dalej zrobic?
--
Arek
> Zrobilem tak jak piszesz, udostepnilem do testow ta drukarke pod nazwa
> "drukarka"
>
> napisalem w pliku bat :
> net use lpt1: \\Poczta Nowa\drukarka
>
> "Poczta Nowa" jest nazwa mojego komputera
>
> niestety daje komunikat:
> Wysapil blad systemu 66
> Typ zasobu sieciowego jest niepoprawny
a nie jest to przypadkiem efekt spacji w nazwie komputera?
spróbuj net use lpt1: "\\Poczta Nowa\drukarka"
referencja: http://tinyurl.com/puhzu
geos
Jeszcz raz dzieki
--
Arek
--
Arek
--
Marek
Nie zadziała, ponieważ program DOS-owy nie korzysta ze sterownika
drukarki PDFCreator. Sytuacja jest analogiczna do "prawdziwej" drukarki
laserowej z językiem PCL (drukarka jest uządzeniem inetligentnym) i
urządzeniem GDI, gdzie cała inteligencja jest zawarta w sterowniku, a
drukarka to tylko fizyczny mechanizm drukujący.
--
================================
Leszek KUBRAK
To jest ciekawe co piszesz. Powiedz mi tylko na jakim etapie u Ciebie znaki
sterujace zamieniaja sie na znaki drukarskie. Czy u ciebie te wydruki w
pliku zawieraja jeszcze znaki sterujace czy tez sa w jakis sposob zamienione
na grafike.
Co robi ten program d2wPrint?
--
Arek
hm, gdzieś na przełomie 2006/2007 ktoś tu przedstawił ciekawe rozwiązanie
przekładania wydruków tekstowych z DOS, na graficzne - włączeni z
'wkompilowywaniem' grafiki w te wydruku.
Przeszukaj archiwum. Temat dotyczył jednego z trzech kompilatorów clipper,
harbour albo xharbour.
--
pozdrawiam, GG i SkyPe w X-nagłówku posta, e-mail: zmień wpw na wp
piotr
Sądzę, że pominąłeś to miejsce: http://www.kumar.com.pl/programy/d2wPrint-opis.pdf
Tu jest wszystko pięknie opisane. Nie wiem, czy dobrze rozumiem Twoje
pytanie, ale tak na prawdę co i jak się odbywa, mało mnie
interesuje ;) Za czasów DOS-owych miast wysyłać wszystko wprost do
drukarki można było to najpierw zapisać w pliku i np. obejrzeć. Kody
sterujące to w znaczącej części sekwencje rozpoczynające się od znaku
ESC (kod 27) i jednego do kilku znaków (czyli ośmiobitowych słów)
stanowiących odpowiednio jakieś polecenie i ew. parametry. Dla
przykłady wysłanie kodu ESC, a po nim "E" włącza pogrubienie (w trybie
EPSON, bo takiego używam; za dawnych czasów funkcjonował jeszcze tryb
IBM, ale go pomijałem). Plik taki można było z linii komend przez COPY
wysłać do portu LPT (PRN) albo COM i jeśli była tam podłączona
drukarka, to jej zadaniem było to zrozumieć i nanieść odpowiednio na
papier.
Programik, który podpowiedziałem zachowuje się właśnie tak, jak ta
drukarka w DOS'ie, tzn. rozumie część kodów sterujących (pogrubienie
na pewno) i to, co wczyta i przeanalizuje, pokazuje Ci w sposób
graficzny na ekranie (jeśli skorzystasz z opcji podglądu) albo posyła
do odpowiedniej drukarki windowsowej korzystając z zainstalowanego
sterownika.
Nie jestem pewien, ale chyba zdarzyło mi się w taki sposób wysłać
wydruk przygotowany dla drukarki laserowej w PCL i zawartość tych
długaśnych kodów sterujących została potraktowana najzwyczajniej jako
tekst.
Program radzi też sobie z polskimi znakami. Latin2 rozpoznaje na
pewno, a Mazovii nie używałem tak długo, że nie wiem jaki będzie
efekt, ale i na to znajdzie się sposób (np. GżegżółkaXP).
--
Marek
Cuda wypisujesz. Komputer nie moze miec spacji w nazwie.
> Mam komputer (laptop) bez portu LPT1 a musze uzyc programu DOSowego ktory
> juz na wstepie sprawdza czy mam podlaczona drukarke do portu LPT1 i konczy
> dzialanie.
Dla plików ściągnij:
http://www.lerup.com/printfile
skonfiguruj i drukuj wprost na wybraną drukarkę.
Dla przejmowania z LPT1 użyj prg polskiego autora chyba "dosprint".
Licencja płatna chyba 50zł/rok. Tworzysz katalog dla umieszczania przez
ten programik plików z LPT1 a stamtąd już ci automatycznie wydrukuje
dowolnie wybrana drukarka. Programik rezyduje cały czas w ram.
Andrzej.
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
> Arek <are...@wp.pl> napisał(a):
>
>> Mam komputer (laptop) bez portu LPT1 a musze uzyc programu DOSowego ktory
>> juz na wstepie sprawdza czy mam podlaczona drukarke do portu LPT1 i konczy
>> dzialanie.
>
> Dla plików ściągnij:
> http://www.lerup.com/printfile
> skonfiguruj i drukuj wprost na wybraną drukarkę.
>
> Dla przejmowania z LPT1 użyj prg polskiego autora chyba "dosprint".
> Licencja płatna chyba 50zł/rok. Tworzysz katalog dla umieszczania przez
> ten programik plików z LPT1 a stamtąd już ci automatycznie wydrukuje
> dowolnie wybrana drukarka. Programik rezyduje cały czas w ram.
>
Ale on nie chce nic mapować, on potrzebuje virtuala LPT1
Czyli chce oszukać, że ma włączoną drukarkę, której w ogóle niema.
No właśnie ten drugi programik chyba tak oszukuje.
Myślę, że autor jest dostępny i napewno coś pomoże w tej kwestii.
tu są ciekawe pytania i odpowiedzi:
http://www.nix-ware.com/dos-print.php?page=A
> Piotr Kulinski <piotr_k...@wpw.pl> napisał(a):
>>
>> Ale on nie chce nic mapować, on potrzebuje virtuala LPT1
>>
>
> Czyli chce oszukać, że ma włączoną drukarkę, której w ogóle niema.
> No właśnie ten drugi programik chyba tak oszukuje.
> Myślę, że autor jest dostępny i napewno coś pomoże w tej kwestii.
>
> tu są ciekawe pytania i odpowiedzi:
> http://www.nix-ware.com/dos-print.php?page=A
>
niestety drugi programik nie pomoże,
Program ma za zadanie jedynie odczytać plik stworzony przez program
przechwytujący wejście LPT i wysłać go na dowolną drukarkę zdefiniowaną w
systemie.
Najprościej jak zainwestuje jakieś 30-60 zeta w przejściówkę USB<->LPT
Witam.
> Mam komputer (laptop) bez portu LPT1 a musze uzyc programu DOSowego ktory
> juz na wstepie sprawdza czy mam podlaczona drukarke do portu LPT1 i konczy
> dzialanie.
Podpinam sie do tematu :-))
Problem z programem (clipper 5.3 exospace) ktory sprawdza LPT1
i stacje FDD, w Win 98 dziala ok.
W Win XP program nie dziala prawidlowo,
mapowania net use (komunikat wlacz drukarke) oraz subst nie pomagaja
(komunikat wloz dyskietke do napedu, odblokuj do zapisu itp itd).
Pytam na tej grupie poniewaz sa tu programisci od clippera,
doradza jak obejsc zabezpieczenia.
Brak kontaktu z autorem programu.
pozdrawiam
Adams
na dyskietkę rada:
subst A: <jakis_katalog>
na LPT: kupić przejściówkę USB<->LPT
Ach, no tak.
Nie zaskoczyłem, ze nowe lapki nie mają kart I/O a wyłącznie USB.
Ten emulator kart I/O może być jamiś wyjściem a najlepiej jakby
ktoś kto to ma sprawdził czy tu zadziała.
> na dyskietkę rada:
> subst A: <jakis_katalog>
To nie dziala, musial skorzystac z nietypowych rozwiazan,
komunikat dyskietka zabezpieczona przed zapisem
> na LPT: kupić przejściówkę USB<->LPT
Komputer ma LPT i tu tez programista cos sprawdza
co w Windows 98 bylo ok a pod Win XP nie dziala.
Dzieki za odpowiedz
pozdrawiam
Adams
> Użytkownik "Piotr Kulinski" <piotr_kulinski@
> Witam
>
>> na dyskietkę rada:
>> subst A: <jakis_katalog>
>
> To nie dziala, musial skorzystac z nietypowych rozwiazan,
> komunikat dyskietka zabezpieczona przed zapisem
>
hm, być może
takie montowanie działało na badziew zwany Płatnikiem, który wymagał
dyskietki - w czasach kiedy już o niej już dawno zapomniano.
Może trzeba było zerknąć w exe i wyszukać frazy A:, a nuż jest przy niej
zapisany jakiś ciąg identyfikujący plik? (może wymagany na dyskietce...)
strzelam
>> na LPT: kupić przejściówkę USB<->LPT
>
> Komputer ma LPT i tu tez programista cos sprawdza
> co w Windows 98 bylo ok a pod Win XP nie dziala.
>
może np. sprawdzać istnienie klucza sprzętowego na LPT i działa jedynie w
przypadku klucza - tak swego czasu zachowywał się program SAD firmy INVAR
bez klucza ani rusz.
Na lapku gdzie mam viśtę programik prn2file.com tworzy mi plik.txt
ale niestety natychmiast jest wyrzucany z RAM.
Oczywiście napierw zainstalowałem drukarkę epsonFX na lpt1
i dosowy program wykrywa ją ale prawdopodobnie sprawdza inne
rzeczy (np czy jest papier) to pwoduje, że wywala błąd.
> Wczoraj poświęciłem trochę czasu.
>
> Na lapku gdzie mam viśtę programik prn2file.com tworzy mi plik.txt
> ale niestety natychmiast jest wyrzucany z RAM.
>
> Oczywiście napierw zainstalowałem drukarkę epsonFX na lpt1
> i dosowy program wykrywa ją ale prawdopodobnie sprawdza inne
> rzeczy (np czy jest papier) to pwoduje, że wywala błąd.
>
Bo nie ma co się bawić w prn2file
to było dobre dla dosa albo dosbox-a
trzeba raczej szukać jakiegoś narzędzia pod win, sa M$ udostępnia w WinAPI
proste funkcje do przechwycenia portu, tu masz przykład
http://www.codeproject.com/script/Articles/ArticleVersion.aspx?aid=42127&av=15304
testowo możesz zainstalować drukarkę np. OK, albo tekstową rodzajową i
ustawić ją na urządzenie PRN: plik
następnie port LPT przekierować poprzez net use na tą drukarkę
przy wydruku win spyta się nazwę pliku do którego zostanie wydrukowane i
tyle
net use LPT \\localhost\OKI
>
> http://www.codeproject.com/script/Articles/ArticleVersion.aspx?
aid=42127&av=153
> 04
>
> testowo możesz zainstalować drukarkę np. OK, albo tekstową rodzajową i
> ustawić ją na urządzenie PRN: plik
> następnie port LPT przekierować poprzez net use na tą drukarkę
> przy wydruku win spyta się nazwę pliku do którego zostanie wydrukowane i
> tyle
>
> net use LPT \\localhost\OKI
>
Nie wiem czym są spakowali te .zip bo mnie 7z wywala, że nie może
otworzyć jako archiwum. Interesuje mnie również źródło bo może
mi wiele wyjaśnić.
> Piotr Kulinski <piotr_k...@wpw.pl> napisał(a):
>
>>
>> http://www.codeproject.com/script/Articles/ArticleVersion.aspx?
> aid=42127&av=153
>> 04
>>
>> testowo możesz zainstalować drukarkę np. OK, albo tekstową rodzajową i
>> ustawić ją na urządzenie PRN: plik
>> następnie port LPT przekierować poprzez net use na tą drukarkę
>> przy wydruku win spyta się nazwę pliku do którego zostanie wydrukowane i
>> tyle
>>
>> net use LPT \\localhost\OKI
>>
>
> Nie wiem czym są spakowali te .zip bo mnie 7z wywala, że nie może
> otworzyć jako archiwum. Interesuje mnie również źródło bo może
> mi wiele wyjaśnić.
>
hm,
dziwne, u mnie nie ma takiego problemu,
są tam też źródła i również bez problemu się pobierają
jeszcze raz link
http://www.codeproject.com/script/Articles/ArticleVersion.aspx?aid=42127&av=15304
> Mam komputer (laptop) bez portu LPT1 a musze uzyc programu DOSowego ktory
> juz na wstepie sprawdza czy mam podlaczona drukarke do portu LPT1 i konczy
> dzialanie.
> Mam na tym komputerze zainstalowana wirtualna drukarke PDFCreator i
> chcialbym na stale przekierowac LPT1 na PDFCreator.
>
> Duzo czasu poswiecilem na szukanie rozwiazania w internecie.
> Jedni pisza ze mozna to zrobic w autoexec.bat tylko nie pisza jak, inni
kaza
> napisac programik w assemblerze (nie umiem, odpada), inni jeszcze proponuja
> sciagnac jakis program prn2file, Microsoft proponuje uzyc
> "net use lpt1: \\serwer drukarki\udział wydruku"
> tylko ze w moim przypadku nie wiem co mam podac jako serwer drukarki a co
> jako udzial wydruku (w ustawieniach moich drukarek nie ma takich pojec)
> Intuicyjnie czuje ze sprawa jest bardzo prosta tylko nie wiem jak sie do
> tego zabrac.
> Prosze o jakakolwiek sugestie w tym temacie.
>
> --
>
No cóż, po wielu próbach jednak na lapku wyłącznie z USB
bez sieci lokalnej przy użyciu wielu programów do przekierowywania
na LPT1 programów w dosie sprawdzających obecność fizycznych
potów a kartach I/O (input/output) nie da się uruchamiać połaczenia
z drukarką.
Ale praktycznie sprawdzony sposób to właśnie sieć np domowa
zrobiona na prostym ruterku, w której na jednym z komputerów jest
podłączona drukarka.
Podam przykład z systemem Viśta.
1. Uruchamiamy konsolę dos na Viście
2. Wpisujemy tam:
C:\Users\ab>net use lpt1: \\Test\hp320 /persistent:yes
Polecenie zostało wykonane pomyślnie.
Jeśli będzie błąd 66 to zanczy, że coś z poleceniem jest nie tak
lub konfiguracja drukarki sieciowej jest zła.
("Test" to nazwa mojego komputera z podłączoną fizycznie drukarką
i udotępnioną dla sieci)
3. Proba połączenia w konsoli DOS:
C:\Users\ab > type c:\plik.txt > prn (lub zamiast prn \\Test\hp320)
Musi wydrukować.
usuwanie mapowania drukarki:
C:\Users\ab>net use lpt1: /delete
Pomyślnie usunięto lpt1.
U mnie działają wydruki z programów DOS, czyli sprawdzanie obecności
drukarki działa prawidłowo, w odróżnieniu od tych wszystkich przechwytywaczy
gdzie mam komunikat drukarka podłączona ale konsola i tak wywala
mi linie gdzie jest polecenie wydruku.
Jesli i tak to nie pomoże w twoim przypadku znaczy, że dupa blada.
A tak z ciekawości co ten twój programik dosowski robi?
itp itd.
W chwili obecnej sprawdzilem ilosc plikow w katalogu roboczym wynosi 999.
System ten napisalem w TurboBasicu Borlanda w latach 1986-1989.
Firma dla ktorej to zrobilem uzywa ten system do dnia dzisiejszego i z
drukarkami dosowymi jakos sobie radza.
Problem jest u mnie. Po dwudziestu paru latach chcieli cos tam zmienic czy
tez dopisac. Ja im to zrobilem i skompilowalem u siebie na komputerze ale
nie jestem w stanie tego przetestowac gdyz na zadnym komputerze nie mam
portu LPT1 ani drukarki pasujacej do takiego portu. U klienta tez nie za
bardzo moge testowac bo jest on w odleglosci 1500 km od mojego komputera.
Mam zainstalowana u siebie wirtualna drukarke "PDFCreator" na ktorej zawsze
testuje robione przeze mnie wydruki bez potrzeby zuzywania czasu i papieru
na zwyklej drukarce.
Z ta wlasnie mysla zadalem pytanie na grupie jak przekierowac wydruk zamiast
na LPT1
na ten PDFCreator.
--
Arek
więc programujesz, czy takie rozwiązanie które podałem, się nie sprawdza?
http://www.codeproject.com/script/Articles/ArticleVersion.aspx?aid=42127&av=15304
czy też z drukarką rodzajową?
Co chcesz osiagnac?
1.Wczesniej wydawalo mie sie, ze program nie startuje, bo sprawdza
obecnosc drukarki na LPT1 i chcesz go "oszukac", zeby startowal.
2. Teraz przypuszczam, ze chcesz utworzyc PDF-a a PDF Creator nie
akceptuje trybu tekstowego.
Jesli to drugie i jest to wydruk z programu dosowego w trybie tekstowym
to kierowanie go na drukarke, która nie akceptuje trybu tekstowego
(rzeczywistą czy wirtualną) nic nie da
Niezaleznie od tego czy drukarka fizyczna jest podpięta pod LPT1
(rzadko, ale sa np. takie Samsungi czy panasoniki, mają port LPT1 a nie
obsluguja trybu tekstowego) czy tez zamapujesz ja przez NET USE, czy tez
jest to emulator typu PDF Creator, to wydruk nie wyjdzie.
Aby moc skierowac wydruk z DOS-a na wspolczesna drukarke to musi ona
akceptowac jezyk opisu strony ESC/P albo PCL-3/5. Wydruk powinien byc
oczywiscie sformatowany przy uzyciu tych kodow.
Jesli drukarka nie akceptuje trybu tekstowego to, tak jak ktos juz
pisal, kierujesz wydruk do pliku, i ten plik w sposob mniej lub bardziej
automatyczny drukujesz programem typu dosprn (jest ich kilkanascie).
Taki program zaleznie od wersji "rozumie" kody ESC/P albo PCL i zamienia
wydruk z postaci tekstowej na graficzna i mozesz go wtedy skierowac na
drukarke windowsowa albo np.PDF Creator.
Wiekszosc z tych programow poprawnie interpretuje malo wyrafinowane wydruki.
Jesli uzywasz kodow PCL to polecam mniej znany VisualPcl
http://www.visual.co.uk/visualpcl2.asp
Akceptuje zlozone kombinacje sterujace, drogi, ale jest demo.
Nie no, myślałem że to cudzy program ale jak twój to możesz
przecież wszystko. Ja w swoich prgramach mam jedną procedurę,
która jest wywoływana z innych procedur domagających się wydruku.
Tam mogę decydować czy robić plik .txt czy kierować na drukarkę.
Mając tekst to przecież do podglądu wystarczy ci zwykły notatnik.
No a przede wszystkim po co jest to sprawdzanie obecności drukarki
już przy uruchamianiu programu.
Jak taki program napisałeś to nie jesteś początkującym.
Ja jednak podejrzewam, że ten program to osobne moduły .exe
i stąd moja sugestia może być trochę trudniejsza w realizacji.
Ja też padłem ze zdumienia jak zgłosił się do mnie klient z 1999r.
i nie mogłem wyjść ze zdumienia, że on go cały czas używał.
Problemem stała się właśnie drukarka.
--
Arek