| |
|
|
RGH | FreeProfan - 32 + 64 Bit
Da die Diskussion über FreeProfan im XProfan Forum etwas untergeht und ich die Themen auseinanderhalten möchte, nun ein eigenes Forum für FreeProfan.
32-Bit:
Herunterladen
64-Bit:
Herunterladen
Und dafür gibt es auch einen guten Anlass: FreeProfan wurde auf den Funktionsumfang von XProfan X3 angehoben und hat jetzt die Versionsnummer 0.9.
Ziel ist es, in den nächsten Wochen noch zu testen und ggf. Bugs zu fixen, um dann Version 1.0 setzen zu können. Dann werde ich die Quellcodes "bereinigen", um ihn als OpenSource für Lazarus/FreePascal freizugeben. Dann kann Profan weiterleben, wenn ich es nicht mehr weiter pflegen kann.
Hier nun alles, was man für die 32- oder 64-Bit Version benötigt!
UPDATE auf 0.95: 05.05.2016 - 01:30 Uhr (32 Bit) / 05.05.2016 - 01:35 Uhr (64 Bit) |
| 3.068 kB | | Bezeichnung: | FreeProfan64 | | Version: | 0.95 - 05.05.2016 | | Kurzbeschreibung: | Ein 64-Bit-Profan mit dem Funktionsumfang von XProfan X3 | | Hochgeladen: | 02.12.2015 | | Ladeanzahl: | | | | Herunterladen | | | | 2.818 kB | | Bezeichnung: | FreeProfan32 | | Version: | 0.95 - 05.05.2016 | | Kurzbeschreibung: | Ein freies 32-Bit-Profan mit dem Funktionsumfang von XProfan X3 | | Hochgeladen: | 02.12.2015 | | Ladeanzahl: | | | | Herunterladen | | | | 1.057 kB | | Bezeichnung: | XProfed | | Version: | 4.0 | | Kurzbeschreibung: | Der neueste XProfed mit Versionsverwaltung, funktioniert auch unter 64 Bit | | Hochgeladen: | 02.12.2015 | | Ladeanzahl: | | | | Herunterladen | | | | 2.476 kB | | Bezeichnung: | Hilfe zu XProfan X3 / FreeProfan | | Kurzbeschreibung: | Unterschiede zwischen XProfan und FreeProfan sind in der Hilfe erwähnt | | Hochgeladen: | 02.12.2015 | | Ladeanzahl: | | | | Herunterladen |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 02.12.2015 ▲ |
|
|
|
|
RGH | Ach ja: Diskussionen zu FreeProfan bitte künftig in diesem Forum!
Der wichtigsten Unterschiede zu XProfan ist, dass FreeProfan mit Lazarus/FreePascal (und nicht mit Delphi) kompiliert wurde. Die EXE-Dateien sind daher fast doppelt so groß und das Tempo leider nur etwa halb so schnell. Auf modernen Rechnern sollte das allerdings kaum ins Gewicht fallen.
Gruß Roland |
|
|
| XProfan X2Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 02.12.2015 ▲ |
|
|
|
|
RGH | Ein kleines Update vor dem Fest! Download wie üblich über die Links im ersten Post.
Was ist neu in dieser Version?
Einfache numerische und String-Variablen können nun einfacher in Strings eingebunden werden. Hierzu gibt es den Doppelpunkt als neues Ersatzzeichen:
Das ist ähnlich der embedded Variablen in db("SQLExec",...) , nur das dort der Backslash fehlt. Es gibt aber einen kleinen aber feinen Unterschied: Während die die Ersetzung bei der Zuweisung (bzw. beim PRINT im obigen Beispiel) erfolgt, ist die Variante ohne Backslash nur bei db("SQLExec",...) wirksam und wird grundsätzlich erst beim SQLExec ausgewertet, auch wenn der String mit der Ersetzung in einer Variablen steht.
Es gibt neue Operatoren:
$: Zusammenfügung von Strings. Hier werden beide Operatoren grundsätzlich als Strings betrachtet. "Print 23 $ 56" würde also "2356" ausgeben. Vor und nach dem $ muss ein Leerzeichen sein.
+%: "Ergebnis = A +% B" - Hier ist das Ergebnis A + B Prozent von A. Beispiel:
-%: "Ergebnis = A -% B" - Das Ergebnis ist A - B Prozent von A *%: "Ergebnis = A *% B" - Das Ergebnis ist B Prozent von A /%: "Ergebnis = A /% B" - Das Ergebnis ist 100%, wenn A gleich B Prozent ist.
Kurz: Rechnen wie mit der Prozenttaste des Taschenrechners!
Außerdem gibt es die neue Systemvariable $CurrentDir für das aktuelle Verzeichnis.
Viel Spaß damit, sowie ein frohes und gesegnetes Weihnachtsfest und einen guten Start ins Neue Jahr 2016!
Roland
PS: Die nächste XProfan-Version wird diese neuen Features auch haben. |
|
|
| XProfan X3Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 23.12.2015 ▲ |
|
|
|
|
RGH | Es gibt eine neue Version beider FreeProfan-Versionen, die den Bug mit dem Befehl ASSIGN nicht mehr enthält. Außerdem wurden ein paar weitere Mini-Bugs beseitigt.
Gruß Roland
ACHTUNG: Auch wenn es die Forensoftware versäumt, das Upload-Datum zu aktualisieren, so handelt es sich trotzdem um die Version vom 14. Januar 2016, die ihr hier bekommt! |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 16.01.2016 ▲ |
|
|
|
|
RGH | Beim Anpassen der Optik des SpinEdits hatte sich ein Fehler eingeschlichen. Er ist jetzt korrigiert!
Gruß Roland |
|
|
| XProfan X3Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 18.01.2016 ▲ |
|
|
|
|
RGH | FreeProfan32 und FreeProfan64 jetzt in der Version 0.95 mit vielen Neuerungen:
Menü-Icons bei Standardmenüs Bislang funktionierten Icons in Menüs nur mit User-Drawn-Menüs, die durch die Menüfunktionen vom Programmierer farblich und mit Fonts angepasst werden können. Ein Nachteil der User-Drawn Menüs ist, dass die Auswahl eines Menüicons direkt über Hotkey nicht möglich ist, sondern der Menüpunkt bei Tastaturbedienung über die Kursortasten angewählt werden muss. Außerdem gefällt Manchem der normale Windows-Stil bei den Menüs besser. Jetzt ist es auch möglich, bei Standard-Menüs den einzelnen Menüpunkten ein Icon zuzuweisen. Hierzu muss das Handle des Icons einfach negativ übergeben werden. HINWEIS: In XProfan tragen nun die Funktionen CREATE("HIcon",...) und IMAGELIST("GetIcon",...) dafür Sorge, dass das Handle eines Icons als LongInt (bzw. QuadInt in FreeProfan64) immer ein positiver Wert ist. Ermittelt man das Icon-Handle mit anderen Funktionen, etwa der Windows-API, muss man sich selbst darum kümmern. Hintergrund: Da ein Handle von Hause aus ein vorzeichenloser Integerwert (32 bzw. 64 Bit) ist, kann seine Entsprechung als vorzeichenbehafteter Integer auch negativ sein, wenn der Wert in der oberen Hälfte des Wertebereichs eines vorzeichenlosen Integers ist. Dann sollte man das ermittelte Icon zerstören und es neu ermitteln, solange bis ein Wert im unteren Bereich zurückgeliefert wird.
Embedded Vars Es können jetzt, in Anlehnung an "embedded SQL" (siehe Hilfe), auch in Stringliteralen Variablen direkt eingebettet werden. Dazu wird eine neue Escape-Sequemnz eingeführt: "\:". Dahinter folgt der Name der Variablen. Numerische Variablen werden wie mit STR$() in Strings umgewandelt. Den Abschluss bildet bei Variablen mit Postfix eben dieses, bei Variablen ohne Postfix ein Semikolon. Beispiel:
Letztlich bewirkt es das Gleiche wie:
Neue Operatoren $ Eigentlich sollte man so etwas bei sauberer Programmierung nicht machen, aber wenn man einen String und einen numerischen Wert mit "+" verknüpft, bestimmt der zweite Parameter, ob das Ergebnis errechnet wird oder ob zwei Strings verknüpft werden. Der neue Operator "$" verknüpft nun beide Werte immer als String zu einem String, selbst wenn beides numerische Werte sind. Vor und nach dem "$" muss ein Leerzeichen sein.
== != && || Es kam der Wunsch auf, in Anlehnung an andere Sprachen die Zuweisung "=" vom Vergleich auf Gleichheit (bislang auch nur "=") zu unterscheiden. In Anlehnung an die häufigsten Programmiersprachen kann nun auch das "==" beim Vergleich verwandt werden. XProfan und FreeProfan erlauben nun beides. Bei der Gelegenheit wurden auch zusätzliche Schreibweisen für "<>", logischem "AND" und "OR" erlaubt wie sie z.B. in C++ oder Java üblich sind. Wichtig: Diese Operatoren müssen zwingend von zwei Leerzeichen eingerahmt sein, um nicht den Parser zum Stolpern zu bringen.
+% -% *% /% Was jeder Taschenrechner kann, kann nun auch XProfan: die Prozentrechnung: +%: "Ergebnis = A +% B" - Hier ist das Ergebnis A + B Prozent von A. -%: "Ergebnis = A -% B" - Das Ergebnis ist A - B Prozent von A *%: "Ergebnis = A *% B" - Das Ergebnis ist B Prozent von A /%: "Ergebnis = A /% B" - Das Ergebnis ist 100%, wenn A gleich B Prozent ist. Beispiel:
Kurz: Rechnen wie mit der Prozenttaste des Taschenrechners!
Neue Systemvariablen $CurrentDir Da es seit den 32-Bit-Versionen von Windows kein aktuelles Verzeichnis pro Laufwerk mehr gibt (das war eine DOS-Eigenart), ist die Angabe eines Laufwerkbuchstabens bei der Funktion GETDIR$() sinnlos. Daher wird die Funktion durch die Systemvariable $CurrentDir abgelöst.
&hWin &mWin Da &uWin und &sWin mit dem LongInt-Kennzeichen anfangen und %hWin und %mWin mit dem Integer-Kennzeichen, führt diese Uneinheitlichkeit gerne zu Tippfehlern, obwohl Integer und Longint beide 32 Bit groß sind. Als %hWin und %mWin eingeführt wurden, war das damalige Profan noch in 16-Bit und für Windows 3.x geschaffen. Da gab es noch keine Longints in Profan. Nun sind auch die Schreibweisen &hWin und &mWin erlaubt.
Verbesserungen/Korrekturen im Textmodus PRINT und TBOX wirken immer nur auf das Hauptfenster und werden von der Umleitung nicht betroffen. (So steht es auch eigentlich schon immer in der Hilfe.) Auch bei COLOR habe ich den unerwünschten Nebeneffekt, dass das nachfolgenbde DRAWTEXT auch im Hauptfenster landete, eliminiert. (Nicht eliminiert, habe ich den bislang ungeplanten Nebeneffekt, dass der COLOR-Befehl zusätzlich auch die Umleitung nimmt und für DRAWTEXT wirkt.)
Bugfixes Alle mir bislang bekannten Bugs wurden gefixt. Insbesondere in FreeProfan wurden einige Bugs gefixt, die auf Unterschiede zwischen Delphi und FreePascal bei numerischem Überlauf und Stringbearbeitung zurückzuführen waren. So führte z.B. in FreePascal der Parameter -1 bei STARTPAINT zum Absturz, ein fehlendes " konnte zum Absturz führen und PASSWORD funktionierte im Modus 1 nicht korrekt. Außerdem wurde in FreeProfan ein Problem beim Anzeigen der Menüs behoben. Für alle Versionen: Ein Bug bei der Funktion DEL$() wurde beseitigt. Probleme mit komprimierten Runtimes/Programmen wurden behoben.
Gruß Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 25.03.2016 ▲ |
|
|
|