Ältere Xbase++ Application Windows 10 64 Bit

Von der Installation bis zur Auslieferung der Applikation

Moderator: Moderatoren

batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

Hallo in die Runde :-)

ich bin neu hier im Forum. Ich hoffe Ihr könnte mir helfen. Ich habe eine Frage zur Installation einer xbase++ Anwendung.

Ausgangssituation:
Die Applikation läuft aktuell noch auf 3 Windows 7 Rechnern via Netzwerkfreigabe (der Entwickler und ehemalige Admin sind nicht mehr verfügbar und Dokumentation leider auch eher nicht vorhanden).
Zugriff auf das Applikationsverzeichnis vorhanden/ ggf. auch noch die alten "Sourcecodefiles".
xbase Runtime/ Servicepacks etc. nicht verfügbar.

Gewünscht wäre:
Von drei Windows 10 64 Bit PC via Share die Applikation weiter nutzen.

Mein Kollege und ich haben gesehen, das es ein sp1 für xbase 1.9 gibt. Einen Trial Account bei Alaska gemacht, weil wir gelesen hatten das man das ggf. ohne Subscription runter landen kann (http://bb.mobile.donnay-software.com/Do ... ious#p2060) - Idee war : Runtime mal installieren und Applikation rüber kopieren und gucken ob es läuft. Leider steht der Download so nicht zur Verfügung.

Frage nun: Geht unser Wunsch ? Was brauchen wir dafür bzw. was wäre zu bedenken ? Gibt es ggf. eine Alternative ?

Freuen uns über Input von Fachmännern und Fachfrauen ;-)

lg
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von georg »

Hallo,


herzlich willkommen hier im Kreis,

Ihr werdet eine Minimum-Runtime-Umgebung haben. Öffne mal eine Befehlseingabe in dem Verzeichnis, in dem das Programm installiert ist und gebe den Befehl "xppload version" ein. Damit erhältst Du (wenn xppload auf dem Rechner ist) Informationen zur eingesetzten Version von Xbase++

Theoretisch sollte das Programm auch unter Windows 10 laufen. Habt Ihr das mal versucht? Wenn ja, was hat nicht funktioniert? Wenn nein, was hindert Euch?

Die Trial-Version von Xbase++ muss m.W. per Email angefordert werden, Ihr werdet allerdings nur die aktuelle 2.0 erhalten. Mit einer Lizenz (= Geld fliesst) bekommt Ihr dann aber auch Zugriff auf die alten Versionen.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

herzlich willkommen hier im Kreis,
Danke danke :-) und auch für die zeitnahe Antwort !
Ihr werdet eine Minimum-Runtime-Umgebung haben. Öffne mal eine Befehlseingabe in dem Verzeichnis, in dem das Programm installiert ist und gebe den Befehl "xppload version" ein. Damit erhältst Du (wenn xppload auf dem Rechner ist) Informationen zur eingesetzten Version von Xbase++
Werde ich / wir machen wenn wir wieder vor Ort sind - akt. haben wir nur eine zip des Applikationsordners - dort sah ich ein Logfile von vor 1 Woche -
Xbase++ Version : Xbase++ (R) Version 1.20.178
Betriebssystem : Windows NT 6. 1 Build 07601 Service Pack 1
Theoretisch sollte das Programm auch unter Windows 10 laufen. Habt Ihr das mal versucht? Wenn ja, was hat nicht funktioniert? Wenn nein, was hindert Euch?
Habe den Programmordner auf einem alten XP Notebook und auf meinem Windows 10 PC kopiert und beim starten bei beiden Systemen die Fehler Meldung bekomme ".... XBTBase1.dll nicht gefunden. Die Neuinstallation könnte das Problem beheben." Dann auch noch für 2 weitere dlls. Allerdings hab ich auf Windows 10 jetzt die Trial xbase 2.0 am start und hier bekomme ich nun "Prozedureinspurngpunkt ___iniInitM nicht gefunden." (Was - so vermute ich - daran liegt, das jetzt beide dlls mit Xbase++ 2.0 auf dem Rechner installiert wurden)
Die Trial-Version von Xbase++ muss m.W. per Email angefordert werden, Ihr werdet allerdings nur die aktuelle 2.0 erhalten. Mit einer Lizenz (= Geld fliesst) bekommt Ihr dann aber auch Zugriff auf die alten Versionen.
Ja - danke die Trail s.o. läuft jetzt bei mir.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von AUGE_OHR »

hi,
batmen hat geschrieben: So, 06. Okt 2019 19:53 Xbase++ Version : Xbase++ (R) Version 1.20.178
das ist ja noch aus dem letzen "Jahrtausend" ... :roll:

die Runtime DLL haben eine Version "Beschränkung" d.h. eine v1.2 EXE läuft nur mit der v1.2 Runtime und DLL.
obwohl ältere Version grundsätzlich unter Windows 10 laufen "sollten" ist die Version doch wohl zu alt.

es muss also ein neues EXE erstellt werden und ggf der Source Code angepasst werden.
dazu musst du eine Lizenz erwerben oder es als Auftrag vergeben.

schreib doch mal welche PLZ du hast. es gibt diverse Usergroups die dir weiterhelfen könnten
gruss by OHR
Jimmy
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von Wolfgang Ciriack »

Hallo,
Zugriff auf das Applikationsverzeichnis vorhanden/ ggf. auch noch die alten "Sourcecodefiles".
xbase Runtime/ Servicepacks etc. nicht verfügbar.
Wenn die Sourcen vorhanden sind, einfach mal probieren, das ganze unter 2.0 zu compilieren.

Die XBTBase1.dll (XBase Tools) und die anderen fehlenden Dlls sollten eigentlich bei den Runtime Dlls im Applikationsordner vorliegen.
Viele Grüße
Wolfgang
ramses
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2513
Registriert: Mi, 28. Jul 2010 17:16
Hat sich bedankt: 12 Mal
Danksagung erhalten: 77 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von ramses »

Einige Entwickler legen die Runtimes oft auch im Windowsverzeichnis oder in einem per PATH gesetzten Verzeichnis ab. Beim Umzug auf einen neuen Rechner ohne die Runtime gibst dann beim Programmstart die Meldungen "DLL nicht gefunden"

Genau so wie du es beschreibst.

Du muss die DLL's auf dem Ursprungs PC suchen und ab besten auf dem neuen PC zusammen mit der EXE ins selbe Verzeichnis kopieren.

Ich denke das ist die Lösung des Problems.

Die DLL der Version 1.9 und 2.0 sind NICHT kompatibel und führen zu deiner erwähnten Meldung.
Valar Morghulis

Gruss Carlo
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von AUGE_OHR »

hi,

öffne mal ein CMD Fenster und starte diese beiden Zeilen (copy/paste)

Code: Alles auswählen

xppload version >> XSETTING.TXT
SET >> XSETTING.TXT
danach poste den Inhalt von XSETTING.TXT hier im Forum und wir wissen mehr.
batmen hat geschrieben: So, 06. Okt 2019 16:51XBTBase1.dll nicht gefunden
frage mal Cortana nach "XBTBase1.dll"
XbTool.jpg
XbTool.jpg (44.84 KiB) 26139 mal betrachtet
wenn es nicht auf den neuen PC zu finden ist muss du es auf dem alten PC suchen.
(s.h. CMD Fenster)
batmen hat geschrieben: So, 06. Okt 2019 16:51 Mein Kollege und ich haben gesehen, das es ein sp1 für xbase 1.9 gibt. Einen Trial Account bei Alaska gemacht, weil wir gelesen hatten das man das ggf. ohne Subscription runter landen kann (http://bb.mobile.donnay-software.com/Do ... ious#p2060) - Idee war : Runtime mal installieren und Applikation rüber kopieren und gucken ob es läuft. Leider steht der Download so nicht zur Verfügung.
klar gibt es die Version noch aber auch als registrierter User kommt man ohne aktive Subskription nicht ran.

Frage : reden wir über GUI oder eine Console App :?:

eine Console App läuft in "allen" xBase Dialekten zu 99 % unter 32 Bit.

ich bin mit der v1.2x in Xbase++ eingestiegen und hatte massive Problem im Netzwerk.
ab Xbase++ v1.5x hat sich IMHO die DBE geändert aber Index Dateien ( NTX oder CDX ?) sollte man eh "neu" aufbauen (kein Re-Index)

bei "neuen" Windows 10 PC, die es nur noch mit 64 Bit OS gibt, sind die "üblichen" Problem zu bedenken.
batmen hat geschrieben: So, 06. Okt 2019 16:51 Frage nun: Geht unser Wunsch ? Was brauchen wir dafür bzw. was wäre zu bedenken ? Gibt es ggf. eine Alternative ?
auch wenn die App ohne Erweiterung startet ist es wahrscheinlich das weitere Anpassungen notwendig werden.

wenn du das Compilieren/Linken nicht jedes mal deine Kollegen überlassen willst brauchst du auch Compiler/Linker und die LIBs. die "darf" dir dein Kollege aber nicht so einfach überlassen. du benötigst dann selbst ein Upgrade deiner Lizenz.

---

wie ich schon sagte ist xBase Console Code zu 99% kompatible zu "allen" xBase Dialekten.
es gibt auch Open Source die mit xBase Console Code klar kommen und "Ersatz" für die die "Tools" unter Windows.
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von Jan »

Mit der 2.0 wurden die Bibliotheken teilweise umstrukturiert. Die einzelnen Funktionen liegen damit nicht mehr in den dll, in denen ältere Prorgamme die erwarten würden. Es kann also eventuell notwendig sein, die Einbindungen der Bibliotheken zu überprüfen (also z. B. die #pragma-Zeilen).

Mal abgesehen davon, das ein mit einer älteren Xbase++-Version kompiliertes Programm unter aktuellen Runtimes nicht läuft. Das gibt dann Rückmeldungen, das die benötigte Version nicht passt.

Bei der 1.2 wäre ich mir jetzt nicht ganz so sicher, ob die auch einwandfrei unter Windows 10 laufen würde. Programme mit 1.9 laufen, das wird aber von Alaska nicht garantiert. Freigegeben wurde erst eine spätere 2.0-Version.

Du kannst aber natürlich den alten Code mit der 2.0 kompilieren, das sollte sofort klappen. Da gab es beim Sprung von der 1.9 auf die 2.0 zwei Änderungen, für die es aber Kompatibilitätsschalter gibt. Das ist ja das schöne an Xbase++: Alaska bricht (fast) nie alten Code. Man kann alten Code imemr mit den neuesten Versionen kompilieren. Anders als bei manch anderen gehypten Sprachen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

Hallo in die Runde - erstmal herzlichen Dank für die vielen hilfreichen und fachlichen Tipps und Infos !

Ein kurzes Statusupdate von der "Front" ;-)

@Wolfgang und Jan - der Tipp es neu zu kompilieren ging - wir haben eine Projektfile gefunden und konnten es ohne Probleme unter der 2.0 Trial erstellen, die "produktiven" Tabellen und Configs hatten wir hier - ein erster Programmstart unter Win 10 64 Bit lief gut ! Ob das die "aktuellsten" Sourcen sind, muss der Bekannte mal mit seinen Bekannte vor Ort checken, er nimmt mal sein Notebook oder so und die gucken sich das mal an - gibt eine Versionsnummer in der Applikation ...
Frage mich - kann man ein mit der Trial erstellte exe über die 30 Tage hin verwenden ?

@Marvin und ramses
Parallel xxpload und dll's - wir haben heute noch ein Lib Ordner bekommen (ich glaub aber dieser ist noch zu alt - Einsprungpunktfehler) und wir haben vor selber mal auf dem SMB und den Workstations via "c:\ dir XT*base.dll /s/p" mal nach DLLs zu scannen.
Werde berichten - ggf. auch wie oben angefragt mal xxpload version machen. (Via checkdll.exe habe ich auch mal die programm exe untersucht und mir angesehen welche dlls gefordert werden).

@Marvin - ist XBase Console Code

Danke erstmal an alle - wir bleiben dran ! PLZ ist 47xxx 42xxx d.h. Duisburg/Duesseldorf
batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

Hallo Zusammen,

mein Kollege hat heute die neu kompilierte Version einem ersten Test unterzogen - sieht gut aus.

Gibt es bzgl. Ausdrucken XBase 2.0 und Windows 10 64 Bit etwas zu berücksichtigen ?

Wir bekommen den Dialog LPT1 einschalten und wenn wir Escape drücken wir folgender Fehler generiert s.u.

Der Kollege hat wohl schon seinen Printer in der cmd auf LPT gemappt.



AGPE.EXE" Datum: 08.10.19 12:21:54

Xbase++ Version : Xbase++ (R) Version 2.00.1095
Betriebssystem : Windows 10 1903 Build 18362
------------------------------------------------------------------------------
oError:args :
-> VALTYPE: N VALUE: 24
-> VALTYPE: C VALUE: LPT1.prn
-> VALTYPE: L VALUE: .F.
oError:canDefault : N
oError:canRetry : N
oError:canSubstitute: J
oError:cargo : NIL
oError:description : Betriebssystemfehler
oError:filename :
oError:genCode : 40
oError:operation : set
oError:osCode : 2
oError:severity : 2
oError:subCode : 4
oError:subSystem : BASE
oError:thread : 1
oError:tries : 0
------------------------------------------------------------------------------
CALLSTACK:
------------------------------------------------------------------------------
Aufgerufen von LOHN1(497)
Aufgerufen von KALKU(418)
Aufgerufen von MAIN(340)
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von georg »

Hallo,


ganz vorsichtig vermutet: der Zugriff auf den Drucker funktioniert nicht.

oError:genCode : 40 gibt den numerischen Fehlercode aus, den Windows zurückgegeben hat. Es liegt also wahrscheinlich daran, wie der Drucker angesprochen wird. So ein kleiner Code-Ausschnitt, wo der Fehler auftritt, ist sicherlich hilfreich.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

Oh ja @Code stimmt :-)

Habe vorhin auch in die Hilfe gesehen :
Print output is terminated using SET PRINTER OFF.Note: If syntax SET PRINTER TO OBJECT is used, the printer object is opened in line printer mode. Not all printers support this mode. So-called GDI printers and special-purpose drivers such as for PDF generation may produce no output when used via the SET PRINTER TO OBJECT command.

Note: The printer may not be associated with a presentation space for as long as it is being used for output with SET PRINTER TO OBJECT.


und bzgl. Hintergrundwissen mal hier geschaut : https://wiki.xbaseentwickler.de/index.php?title=Drucken

Bin jetzt bis heute Abend auf einer Weiterbildung - danke für den Hinweis @code

Code: Alles auswählen

if mrechner="UDO "
   Druckein()
else
   IF Pcort = "BšRO"
      Druckein2()
      SET PRINTER TO LPT2
   ELSE
      Druckein()
      SET PRINTER TO LPT1
   ENDIF
endi
SET DEVICE TO PRINT
lt. Errorlog ist es die Zeile " SET PRINTER TO LPT1 " wo es "knallt" ;)
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von georg »

Hallo,


also, mir fällt folgendes auf:
oError:args :
-> VALTYPE: N VALUE: 24
-> VALTYPE: C VALUE: LPT1.prn
<cFilename>

<cFilename> specifies the name of the ASCII file to which the print output is diverted. The name must contain the drive and path if they are necessary. It can be specified either as literal or as a character expression in parentheses. When the file name is specified without a file extension, the extension ".PRN" is used by default.
Die Laufzeitumgebung "versteht" die Anweisung "SET PRINTER TO LPT1" als "SET PRINTER TO 'lpt1.prn'" und versucht, eine Datei zu erstellen. Also, ich rate hier, da ich seit Jahrzehnten nicht mehr direkt auf Printer-Ports zugegriffen habe. Eventuell könnte ein LPT1: erfolgreicher sein?
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von BJelinek »

Ich drucke alles über

set printer to LPT1
oder
set printer to LPT2
oder
set printer tp LPT3

Es muss aber ein
NET USE LPT1 \\rechnername\freigabename /yes
gesetzt sein.

besser man nimmt LPT2 bis LPT3

Ich rufe immer NETUSE.BAT auf.

NETUSE.BAT
mit folgendem Inhalt:
@NET USE %1 /D >NUL
@NET USE %1 %2 %3 %4 %5 %6 %7 %8 %9

also
run netuse.bat LPT2 \\rechnername\freigabename /yes

Damit kann man auf verschiedene Drucker im Netz oder auch local drucken.

Die Drucker müssen freigegeben sein.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von brandelh »

und es müssen noch echte DOS Drucker sein, ein GDI geht so nur wenn der Treiber das wirklich will
Gruß
Hubert
batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

Guten morgen in die Runde :)

Anbei mal mein Versuch zur Zusammenfassung bgzl. DOS Druck - oder text-mode / line-printing aus XBase/Clipper:

- Windows bietet/hat angeboten: a) Drucken per text-mode/line-printing/Escape-Codes und später b) drucken per GDI
- XBase mit SET PRINTER TO und SET ALTERNATE (wenn nicht mit SAY ausgegeben wird) als text-mode an den Drucker oder in eine Datei senden und mit dem Druckerobjekt an die GDI Drucker
- um a) zu bedienen braucht man einen Drucker der die gesendeten Zeichen interpretieren kann (reine GDI Drucker können das nicht). Man kann mit net use LPT1 \\rechnername\druckerfreigabe den Output direkt an das Gerät oder einen Spool senden
- Mögliche "Tricks" wenn man keinen passenden alten Drucker für a) hat : Spooler wie DOSPRN etc. die die Zeichen verstehen benutzen, Ausdruck in Datei und per dotprint in PDF wandeln, Ausgabe auf XbaseDrucker-Objekt umstellen lineprinter.zip oder HBPRIN32 hier im Forum nutzen, oder alles per Hand neu codieren

Weis jemand was das für ein Format ist, wenn ich den Output in eine Datei packe ? Ich glaube im HEX viel ESC gesehen zu haben. Das muss ja dann ein ältere/kompatibler Drucker verstehen - geht das mit PCL fähigen Druckern ?
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von georg »

Guten Morgen,


in der Datei kommt an, was Du sendest. Wenn Du also z.B. Printoutput für einen alten Epson-Drucker inclusive der Escape-Sequenzen schickst, dann stehen die auch so in der Datei drin. Würdest Du das Ganze dann per "copy datei lpt1:" an einen an LTP1 angeschlossenen alten Epson-Drucker schicken, käme der Ausdruck wie erwartet raus.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von AUGE_OHR »

hi,

hast du mit deiner alten Xbase v1.2 App und den Windows 7 PC mit ESC-Seqzenzen gedruckt :?: wenn ja was für ein Drucker :?:

jetzt kommen neue PCs und sicherlich auch ein neuer Drucker (was ?), oder :?:
das Problem ist das immer weniger Drucker ESC-Squenzen "kennen" und damit kommt nichts oder es nicht so raus wie es soll. :(

prüfen kann man es mit dem erwähnten

Code: Alles auswählen

COPY DATEI.TXT TO LPT1 // evtl mit ":" oder PRN
dabei sollte es eine reine Text Datei ( ANSI / ASCI ) sein die auch Umlaute enthält.
wenn was raus kommt hast du eine Chance das auch Dateien mit ESC-Sequenzen funktionieren

...

wenn du nun mit den Windows Druckern arbeiten willst muss du es auf die Windows Art machen und deinen Code umschreiben
wenn es viele Formulare sind dann wäre ein Report/Formular Generator angesagt.

hier im Forum in der Wissensbasis gib es eine CLASS von Hubert die für Windows Drucker gedacht ist.
gruss by OHR
Jimmy
flanelli
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 151
Registriert: Di, 11. Mai 2010 16:27
Hat sich bedankt: 3 Mal
Danksagung erhalten: 9 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von flanelli »

batmen hat geschrieben: Mi, 09. Okt 2019 9:36 Weis jemand was das für ein Format ist, wenn ich den Output in eine Datei packe ? Ich glaube im HEX viel ESC gesehen zu haben. Das muss ja dann ein ältere/kompatibler Drucker verstehen - geht das mit PCL fähigen Druckern ?
PCL basiert ja letztendlich auf Escape-Sequenzen, ist halt drüber hinaus noch weitaus komplexer und umfangreicher...
Mag sein, dass es heute ( oder morgen ) "zeitaktuelle" Drucker gibt, die nicht PCL-fähig sind aber mir ist da noch keiner
untergekommen...
Naja, und für mehr oder weniger "einfache" Ausdrucke ohne diversen graphischen Schnickschnack sollten auch "alte"
Drucker mit PCL1 aufwärts keine Probleme bereiten wobei ( glaube ich halt ) die Abwärtskompatibilität von PCL6 bei PCL3
endet...

PS.: Damit da jetzt kein Mißverständnis entsteht ... wenn du eine Drucker verwendest der PCL kennt ist das natürlich NICHT gleichbedeutend mit "er würde auch den "Epson-Befehlssatz ESC/P" aus den alten Zeiten 1:1 richtig interpretieren!
Ahoile aus dem Süden
batmen
Rookie
Rookie
Beiträge: 7
Registriert: So, 06. Okt 2019 16:28

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von batmen »

Einen S u p e r S u p e r lieben Dank an Alle hier in der der Runde !

Wir haben mit der Trail 2.0 den alten Source neu kompiliert - das war der FIX raus aus der DLL Problematik (alte DLLs haben wir allerdings an diversen stellen "eingesammelt")

Was das Drucken angeht - so kann der (ich glaub es ist ein Toshiba E-Serie) mit den Escape/ Steuercode umgehen - der lief ja auch mit der xbase 1.2 bis unter Windows 7 mit - haben es heute einfach versucht per net use lpt1 auf \\rechner\toshiprt

Alles in allem also die Applikation auf Win 10 64 am Start inkl drucken :-)

Ihr hab alle geholfen einige Menschen in einem Kleinbetrieb glücklich zu machen ! Danke dafür.

- - -
@georg - danke ja ich hab mir im source angesehen war der mit SAY an den Drucker schickt und das mal ein ein out.prn geschreiben - damit haben wir dann auch getest bzgl. audrucken

@Marvin - ja neuer Drucker wird kommen - dann muss ein kompatibler gefunden oder der source umgestellt werden - das hat mein Bekannter denen auch gesagt

@flanelli - gut zu wissen bzgl PCL ich gucke mal was der noch laufende Drucker "spricht" ist ggf. wichtig wenn es an einen Ersatz geht
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von brandelh »

Falls Ihr die Druckausgaben weiterhin programmieren wollt, solltet Ihr für die Umstellung meine Druckerklasse (HBPrintX ansehen, da habe ich neben PrintText() Methoden auch SAY() eingebaut.
Grundsätzlich hat man mit der Umstellung Ruhe vor allen Drucker Problemen, solange der Treiber und die Hardware OK sind :-)

Aber natürlich ist je nach Anforderung auch List und Label sinnvoll ...
Gruß
Hubert
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von BJelinek »

Hallo Hubert,

funktioniert Deine Druckerklasse auch im reinen VIO Modus ?

Wenn, ja muß ich mich mal damit beschäftigen.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von brandelh »

Nein, da ich ja intern XbpPrinter() nutze, muss die Anwendung auch mit /PM:PM gelinkt worden sein.
Also XbpCRT() Fenster oder XbpDialog()
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von brandelh »

Falls die Oberfläche auf VIO festgelegt ist, könnte man evtl. einen Dienst schreiben (mit Xbase++, der mit PM gelinkt wird, aber unsichtbar im Hintergrund läuft,
oder aber auch eine einfache EXE sein, die mit Steuerparametern dann den Ausdruck erledigt. Steht einem ja alles offen.

Für WEB Programme z.B. habe ich CGI-EXE Dateien mit Xbase++ erstellt, die per GRA Funktionen BMP Dateien erzeugen, da muss man auch GUI linken, aber hat gar keine Benutzeroberfläche
Gruß
Hubert
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 218
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: Ältere Xbase++ Application Windows 10 64 Bit

Beitrag von BJelinek »

Danke für die schnelle Antwort.

Da muß ich wohl noch ein bischen Hirnen.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Antworten