[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/privacyprotection/cron/task/anonymize_ip.php on line 83: A non-numeric value encountered
Inoffizielles deutsches Xbase-Forum • Programmierung unter ALASKA 1.90.355 für WINDOWS 10
Seite 1 von 1

Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 17:33
von Stein
Hallo,

habe das Problem, dass Programme mit der o.a. ALASKA Version unter Windows 10 nicht laufen. Kann noch keine Systematik finden warum;
manches läuft.

Bitte um Hilfe
Udo vom Stein

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 17:57
von Martin Altmann
Hallo Udo,
die Version ist zu alt. Du brauchst mindestens SL1 - selbst das ist noch nicht wirklich für Windows 10 freigegeben.

Viele Grüße,
Martin

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 20:18
von AUGE_OHR
hi,
Stein hat geschrieben: So, 26. Jul 2020 17:33 habe das Problem, dass Programme mit der o.a. ALASKA Version unter Windows 10 nicht laufen. Kann noch keine Systematik finden warum;
manches läuft.
suche mal ob sich in dem Verzeichnis eine XppFatal.LOG befindet. wenn JA bitte posten

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 20:53
von Stein
Unter Windows 7 prof. ok, unter Windows 10 gibt´s Probleme:

IF FILE("c:\master4.vst") .and. FILE("c:\wawi\data118")
IF FILE("c:\master4.vst")
@ 20,1 SAY "STOP1"
INKEY(0)
ENDIF
RunShell("USE LPT1: /DEL /YES","c:\windows\system32\net.exe",.f.)
RunShell("USE LPT1: \\master4\ecosysm2640idw","c:\windows\system32\net.exe",.f.)
IF FILE("c:\master4.vst")
@ 20,1 SAY "STOP2"
INKEY(0)
ENDIF
ELSEIF FILE("c:\master15.vst")
RunShell("USE LPT1: /DEL /YES","c:\windows\system32\net.exe",.f.)
RunShell("USE LPT1: \\master15\FS3920DN","c:\windows\system32\net.exe",.f.)
ELSEIF FILE("c:\master19.vst")
RunShell("USE LPT1: /DEL /YES","c:\windows\system32\net.exe",.f.)
RunShell("USE LPT1: \\master19\FS3920DN","c:\windows\system32\net.exe",.f.)
ENDIF

Das ist der CODE-Teil, der das Programm in der Ausführung ohne XPPFATAL.LOG beendet
Der Kommentar STOP1 kommt noch, dann hört es auf.

Im Taskmanager steht die Prozedur noch drin und muss per Hand entfernt werden.
-------------------------------------------------------------------------------------------------
In einem anderen Programm ist folgender Code, ebenfalls mit RunShell:
ok = .t.
DO WHILE ok
RunShell('"https://www.arz-datamaster.de/login.asp ... re.exe",.f.)
* INKEY(2)
* SLEEP(200)
EXIT
ENDDO
Hier wird die Website unter Windows 10 einwandfrei aufgerufen; im Taskmanager bleibt das Programm nicht übrig.

Gibt es evtl. für die Betriebssystem-Aufrufe NET USE einen anderen ALASKA++-Code ? (in 1.90.0355)
Muss RunShell anders aufgerufen werden.

Was auch nicht funktioniert:

SET Mouse .t.

Das Programm reagiert gar nicht auf die Mouse-Bewegungen

Gruß
Udo

PS: Weiß jemand, ob TOBAX in Leverkusen, Herr Friedhelm Goeder, noch existiert? Dort habe ich ALASKA++ erworben.

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 21:09
von AUGE_OHR
hi,
wenn ich das richtig sehe versuchst du einen Netzwerk Drucker "so" zu aktivieren.

Frage : ist bei dir SMB1 "eingeschaltet" :?:

bei Windows 10 ist SMB1 Default "OFF".

---

Frage : druckst du auch aus "der" App :?:

wenn JA : unter Xbase++ gibt man einen Drucker-Namen an und keinen (LPT) Port.
vielmehr kann man diverse Port einem Drucker zuordnen die man unter verschiedenen Namen anspricht.

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 21:45
von Stein
Ein weiterer Test, der funktioniert:

IF FILE("c:\master4.vst") .and. FILE("c:\wawi\data118")
IF FILE("c:\master4.vst")
@ 20,1 SAY "STOP1"
INKEY(0)
ENDIF
RunShell("\\ls-wxlee5\share\wawi\list_securwarn.lst","mew32.exe ",.f.)


IF FILE("c:\master4.vst")
@ 20,1 SAY "STOP2"
INKEY(0)
ENDIF
Der Editor mem32.exe zeigt korrekt die Liste an und nach dem Beenden der Liste ist alles ok.

Es liegt wohl im vorigen Beispiel am Druckeraufruf und nicht an RunShell

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 21:48
von Stein
Was ist SMB1 ? Ist mir gerade unbekannt.

Ich drucke aus dem Programm, wenn vorher LPT1: einem definierten Drucker zugewiesen wurde, ja.
Die Zuweisung mit NET USE funktioniert mit RunShell nicht mehr.

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 21:50
von Stein
wenn JA : unter Xbase++ gibt man einen Drucker-Namen an und keinen (LPT) Port.
vielmehr kann man diverse Port einem Drucker zuordnen die man unter verschiedenen Namen anspricht...

Wäre für ein CODE-Beispiel sehr dankbar.

Gruß
Udo

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: So, 26. Jul 2020 22:06
von AUGE_OHR
Stein hat geschrieben: So, 26. Jul 2020 21:50 Wäre für ein CODE-Beispiel sehr dankbar.
zunächst musst du "verschiedene" Drucker "installieren".
danach kannst du mit mit XbpPrinter() deine Druck-Routine aufbauen.

wenn du "freie" Drucker-Auswahl haben willst siehe dir mal XbpPrintDialog() an

p.s. "wie" druckst du :?:
das ganze geht Richtung GUI AppEvent() und deshalb funktioniert auch die Maus nicht bei dir.

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Mo, 27. Jul 2020 8:33
von Stein
Hallo Jimmy,

als Programmierer und Apotheker mit eigener Apotheke und früher ca. 160 Apotheken-EDV-Kunden bundesweit habe ich permanent Zeitprobleme. Früher in CLIPPER und jetzt in ALASKA bin ich noch dem textbasierten Programm verhaftet, nicht der GUI. Objektorientierte Programmierung habe
ich leider noch nicht "gefressen", möchte es allerdings.
Gleichwohl gibt es tausende kleine und große Programme in allen möglichen Arbeitsgebieten, die eine Apotheke so mit sich bringt (wissensch. Datenbanken, Buchführung, Warenwirtschaft etc).
Eine Einführung von Friedhelm Goeder aus Leverkusen (TOBAX) in *.XPJ - Projekten und *.DLL vor ein paar Jahren wirkt noch heute.

Zum Thema Drucken:
Wenn ich auf der Betriebssystem-Ebene eingebe: TYPE c:\config.sys > \\master19\FS3920DN und vorher mit NET USE \\master19\FS3920DN den
Drucker im Netzwerk bekannt mache, dann bekomme ich meinen Ausdruck.
In ALASKA sollte es doch auch möglich sein, mit
SET PRINTER ON
SET DEVICE TO PRINTER
SET CONSOLE OFF
SET PRINTER TO "\\master19\FS3920DN"
? "Test-Druck"
zu einem Ergebnis zu kommen. Leider kommt eine Fehlernachricht 67, dass der Druckername im Netzwerk nicht gefunden wurde.
vom Befehl net use \\master19\FS3920dn erhalte ich:
Lokaler Name
Remotename \\master19\FS3920DN
Ressourcentyp Drucker
Status OK
Öffnungen 1
Verbindungen 1
Der Befehl wurde erfolgreich ausgeführt.

Wenn ich hier erst mal von Dir Hilfe erfahren könnte, wäre das toll. Objekt-orientierte Lösungen können dann gerne folgen.

Aktuell plagen mich die TSE-Zwänge vom Finanzamt für unsere Kassen und die Zwänge vom Bundesgesundheitsminister für das geplante eRezept
sowie die Anbindung der Apotheke an die TI-Infrastruktur im Gesundheitswesen mit Konnektor, Heilberufsausweis und Institutionskarte SMC-B.

Grüße aus Wermelskirchen im Bergischen Land
Udo

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Mo, 27. Jul 2020 9:14
von Jan
Udo,

ansich kann Xbase++ die Drucker so ansprechen wie Du das schreibst. Warum der den in dem Fall nicht kennt kann ich aber nicht sagen. Da müsste man genauer nachschauen.

Prinzipiell ist es aber möglich auch in einem zeichenorientierten Dialog auf die unter Windows installierten Drucker zuzugreifen. Das ist ja gerade das Schöne an Xbase++, das man die Sachen mischen kann z. B. während der Übergangsophase von Clipper nach GUI. Du könntest da also den Druckerauswahl-Dialog anzeigen, den Xbase++ Dir bereit stellt, und dann den Ausdruck auf den ausgewählten Drucker schicken. Mir ist klar daß das gerade für jemanden, der das noch nicht kennt, einiges an Zeit kostet. Ich wollte nur darauf hinweisen.

Mit welchem TSE-Anbieter arbeitest Du? Es gibt hier schon mindestens einen Thread, in dem sich über die Vorgehensweise und die Probleme unterhalten wird. Und mit dem letzten oder vorletzten Update hat Alaska ein Asset mitgeliefert, mit dem SwissBit erheblich einfacher integriert werden kann.

Jan

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Mo, 27. Jul 2020 9:36
von AUGE_OHR
hi,

ich arbeite mit dem Printer Object und nicht mit "NET USE" was man unter Windows nicht braucht !

wenn man einen Drucker aus dem Netzwerk hinzufügt ("\\master19\FS3920DN") dann bekommt der Drucker einen Namen !
"der" Name ist gefragt wie die Windows Drucker unter "Drucker & Geräte" aufgelistet sind

man kann den selben Drucker mehrfach auflisten z.b. für verschiedene Formate oder Schacht.
man muss nur jedem Drucker dann verschiedene Namen geben.

---

Was die TSE Geschichte angeht hab ich nichts am Hut.
das soll es in der Xbase++ v2.x doch was geben ... aber das ist wohl GUI

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Mo, 27. Jul 2020 10:10
von Tom
Nur der Vollständigkeit halber:
Du brauchst mindestens SL1 - selbst das ist noch nicht wirklich für Windows 10 freigegeben.
1.90.355 ist SL1.

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Mo, 27. Jul 2020 10:23
von Martin Altmann
Ja - achte auf meinen Zusatz in dem Satz ;-)

Viele Grüße,
Martin

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Mo, 27. Jul 2020 10:27
von Tom
Du schrubst, dass die Version zu alt ist, er bräuchte mindestens SL1, aber diese zu alte Version ist SL1. Und obwohl das nicht für Windows 10 freigegeben ist, läuft mit SL1 erzeugte Software unter Windows 10 völlig problemlos. Das einzige, was nicht zuverlässig funktioniert, sind die Rückgabewerte von OS().

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Di, 28. Jul 2020 15:25
von Leon
Tom hat geschrieben: Mo, 27. Jul 2020 10:27 Das einzige, was nicht zuverlässig funktioniert, sind die Rückgabewerte von OS().
Ich lese, statt OS() zu verwenden, die Registry aus.

Re: Programmierung unter ALASKA 1.90.355 für WINDOWS 10

Verfasst: Di, 28. Jul 2020 15:50
von Rolf Ramacher
Hallo Udo

1. ich empfehle dir xbpprintdialog() zu nutzen. da brauchst du nicht anzusteuern, du übrgibst die Datei zum Drucken an den Dialog. Den Rest macht Windows.

2. Tobax gibt es immer noch . wir treffen uns im Normalfall immer den 2. Dienstag im Monat bei Tobax. dort wirst du mit sicherheit viele Tipps und Hilfe bekommen.