Deutsch
Wünsche und Anregungen

XProfan10 - Wünsche

 
- Seite 1 -


Hier werden Wünsche geäußert.

[box:174b705055]Ich wünsche mir für XProfan10:[/box:174b705055]
isset(a&) zum Prüfen ob a& declariert ist
unset(a&) zum undeklarieren von a&
sort(array[&|$]) / Sortierbefehle für Arrays
Startpaint  -1 benötigt kein %hwnd mehr, und/oder
%hwnd  (Hauptfenster) kann erzeugt werden ohne in der Taskbar zu erscheinen
hiword und loword im Sprachschatz
clearlist  mit Handle als Parameter löscht Listboxinhalt .

Salve.
 
19.06.2005  
 



 
- Seite 10 -



RGH
[quote:c53f1a91e6=Dietmar Horn]1. Die Möglichkeit der bedingten Compilierung.[/quote:c53f1a91e6]
Hallo,
die bedingte Compilierung wird es definitiv geben. Die Sytax habe ich an die von Delphi angelehnt:

$DEFINE  Name: setzt eine Bedingung
$UNDEF  Name: setzt eine Bedingung zurück
$IFDEF  Name: der folgende Code wird nur compiliert, wenn die Bedingung gesetzt ist
$IFNDEF  Name: der folgende Code wird nur compiliert, wenn die Bedingung nicht gesetzt ist
$ELSE : wechselt zwischen compilieren und nicht compilieren
$ENDIF : beendet das bedingungsabhängige compilieren/nicht compilieren.

(Für den Interpreter ist das Wort compileren durch ausführen zu ersetzen.)

Im Interpreter sind die Bedingungen WIN32, VER10.0 und INTERPRETER standardmäßig gesetzt, im Compiler die Bedingungen WIN32, VER10.0.und COMPILER. (Bei Bedarf können auch diese Bedingungen mit $UNDEF zurückgesetzt werden.) Verschachtelung ist erlaubt.

Ich hoffe, daß die nächste Subscriptionslieferung, die diese und andere Erweiterungen enthält, noch dieses Wochenende versandt wird.

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
28.04.2006  
 




Torsten
Rümker
Hallo,
mir ist gerade etwas aufgefallen, das mir bei Profan irgendwie noch fehlt.
Und zwar folgendes:

Es ist ja mit Writeini und Readini relativ einfach Einträge in die Registry zu machen,
und auch sie auszulesen. Aber sie wieder zu entfernen ist so ohne weiteres nicht möglich.

Also wäre mein Wunsch eine Möglichkeit einzelne Schlüssel und Zweige aus der Registry
löschen zu können.

[Edit] Eine Möglichkeit in der Registry nach Schlüsseln, Werten und Daten zu suchen wäre natürlich auch schön, ist aber wohl nicht so wichtig[/Edit]
MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
01.05.2006  
 




Jac
de
Lad
Naja, ich hatte immer wieder Probleme Registryeinträge mittels ReadIni auszulesen (vor allem wenn sie nicht existierten -> Programmabsturz). Vielleicht kann da auch so noch was verbessert werden...

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
01.05.2006  
 




RGH
[quote:5f2a90a3d1=Jacob Liebeck]Ach ja und vier Befehle a la PutWord, PutLong und GetWord und GetLong zum Lesen/Schreiben von Words/Long in Dateien wären eine echte Erleichterung!Jac [/quote:5f2a90a3d1]
Ok, in der nächsten Subscriptionsversion gibt es diese Funktionen und Befehle und ich setze sogar noch eins drauf:

PutByte  #n, b& schreibt ein Byte in die Datei.
PutWord  #n, w& schreibt ein Word (2 Byte) in die Datei.
PutLong  #n, l& schreibt ein LongInt (4 Byte) in die Datei
PutChar  #n, s$ schreibt den String s$ in die Datei (so viele Bytes wie der String lang ist)

b& = GetByte (#n) liest ein Byte aus der Datei.
w& = GetWord (#n) liest ein Word aus der Datei.
l& = GetLong (#n) liest ein LongInt aus der Datei.
s$ = GetChar$ (#n, anz&) liest anz& Bytes aus der Datei in den String s$.

Die Datei muß mit OpenRW  (im Binärmodus) geöffnet worden sein und es wird immer beginnend mit der aktuellen Dateiposition geschrieben bzw. gelesen.

Ein kleines Beispiel:
KompilierenMarkierenSeparieren
!
CLS
Assign #1, "TEST.DAT"
OpenRW #1
PutChar #1, "TestDatei "
PutLong #1, 31
PutWord #1, 32
PutByte #1, 33
Close #1
OpenRW #1
Print GetChar$(#1, 10)
Print GetLong(#1)
Print GetWord(#1)
Print GetByte(#1)
Close #1
Print "OK"
WaitInput
End

In der nächsten Subscriptionsfunktion wird es funktionieren!

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
01.05.2006  
 




RGH
[quote:cd239c5ae4=iF]func file_get_contents(filename$) gibt als String (oder mem) den kompletten Inhalt aus Datei filename$ zurück.
proc file_put_contents( filename$,{string$|mem#} ) schreibt halt string$ oder mem# in Datei filename$.
[/quote:cd239c5ae4]
Ok, diese beiden Wünsche sind durch die Erweiterung von BlockWrite und BlockRead() ja schon umgesetzt. (s.o.)

[quote:cd239c5ae4]Aber noch viel wichtiger: Eine native Funktion zum ermitteln eines freien Dateihandles für assign-Anweisungen. [/quote:cd239c5ae4]
Ab der nächsten Subscriptionslieferung gibt es Assign auch als Funktion. Das erledigt beides in einem Aufwasch: Ermitteln des freien Handles und das Assign:

hDatei& = Assign(Datei$)

Der Datei Datei$ Wird das nächste ungenutzte Dateihandle zugewiesen. Ist keines mehr frei, gibt es eine Fehlermeldung. Ist Datei$ ein Leerstring, erfolgt keine Zuweisung und das ermittelte Dateihandle bleibt frei.
In dem Zusammenhang wurde jetzt konsequent dafür gesorgt, daß das # bei Dateihandles auch weggelassen kann. (Eine Ausnahme bildet PRINT # und INPUT #, da es ja von PRINT und INPUT ohne Dateiangabe unterschieden werden muß.)

Beispiel:
KompilierenMarkierenSeparieren
!
Declare Datei&
CLS
Datei& = Assign("TEST2.DAT")
OpenRW Datei&
PutChar Datei&, "TestDatei "
PutLong Datei&, 31
PutWord Datei&, 32
PutByte Datei&, 33
Close Datei&
OpenRW Datei&
Print GetChar$(Datei&, 10)
Print GetLong(Datei&)
Print GetWord(Datei&)
Print GetByte(Datei&)
Close Datei&
Print "OK"
WaitInput
End

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
01.05.2006  
 




Michael
Wodrich
Beim letzten Beispiel ist sehr gut zu sehen, daß das Handle zugewiesen bleibt.

Was passiert wenn ich die Handles nicht freigebe? Sind sie dann irgendwann alle, alle...?

Wie gebe ich die Handle-Variablen Version frei? (bei der mit # ist es ja klar; einfach Leerstring angeben - aber bei der Funktionsversion bekomme ich ja kein bestimmtes Handle zu fassen...)

z.B. so?
UnAssign Handle&

oder:
UnAssign #1
UnAssign( Handle&)

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
02.05.2006  
 




Michael
Wodrich
In der Hilfe steht (ziemlich versteckt), daß das Namensraum-Symbol bei Konstanten nicht funktioniert.

Wird das behoben oder soll es so bleiben? Mir wäre es lieb, wenn ich auch Konstanten in einer Unit angeben könnte (und da wäre das Namensraum-Symbol halt angebracht).

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
02.05.2006  
 




RGH
[quote:1c94bbedb4=Michael Wodrich]Was passiert wenn ich die Handles nicht freigebe? Sind sie dann irgendwann alle, alle...?[/quote:1c94bbedb4]
Ja, natürlich. Dann gibt es eine entsprechende Fehlermeldung.
[quote:1c94bbedb4]Wie gebe ich die Handle-Variablen Version frei? (bei der mit # ist es ja klar; einfach Leerstring angeben - aber bei der Funktionsversion bekomme ich ja kein bestimmtes Handle zu fassen...)[/quote:1c94bbedb4]
So wie bisher: Assign Handle&, oder Assign #Handle&,.
(Ob mit # oder ohne ist bei allen Dateifunktionen egal.)
Man kann ein nicht mehr benötigtes Handle auch einfach einer anderen Datei zuweisen: Assign Handle&, Datei$. Der alte Assign-Befehl bleibt weiterhin erhalten und hat durchaus noch seine Berechtigung.

Gruß
Roland



Echtes fopen/fclose dann so:  [...] 
 
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.05.2006  
 




RGH
[quote:e3c7004013=iF]iF: isset(a&) zum Prüfen ob a& declariert ist[/quote:e3c7004013]
Ich habe für die nächste Subscriptionsversion SizeOf so erweitert, daß a) auch die Größe von anderen als Bereichsvariablen ermittelt werden kann und b) im Falle daß die Variable nicht existiert, -1 als Ergebnis ausgegeben wird.

Funktion a) ist relativ nutzlos, da diese Variablen eben immer Float (Size = 8 ), Longint/Integer (Size = 4) oder String (Size = Len(String)) sind.

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
02.05.2006  
 




Nico
Madysa
Da der Leerstring-Parameter der Listboxen jetzt (wenn auch als Zahl) verwendet wird, ist mir eine Idee für Combo-Boxen gekommen; da könnte man es so ähnlich machen. 1 steht für unsortiert, mit 2 lässt sich auch Text per Tastatur eingeben und 3 bewirkt beides. Unsortiertheit und Texteingabe konnten ja bereits mit Profan² 6.6 realisiert werden.

P.S.: Ich hoffe, ich erhalte diesmal eine Antwort auf meinen Beitrag.
 
Nico Madysa
03.05.2006  
 




RGH
[quote:59378368a8=Nico Madysa]Da der Leerstring-Parameter der Listboxen jetzt (wenn auch als Zahl) verwendet wird, ist mir eine Idee für Combo-Boxen gekommen; da könnte man es so ähnlich machen. 1 steht für unsortiert, mit 2 lässt sich auch Text per Tastatur eingeben und 3 bewirkt beides.[/quote:59378368a8]
Gute Idee! Ist in der nächsten Subscriptionslieferung (heute Abend?) bereits mit drin!

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
03.05.2006  
 




Jac
de
Lad
Hallo Roland!

Erstmal Danke für die Implementierung von PutLong und so weiter!!! Aber ist es nicht irgendwie verwirrend, dass du PutChar verwendest um einen String, und nicht ein einzelnes Zeichen (Char) zu schreiben? Naja, ich weiß, dass GetString$ ja schon vergeben ist und es deshalb warscheinlich schwierig werden würde...eben nur etwas verwirrend...ach ist eigentlich egal, ich werde mich schon dran gewöhnen! Die neuen Funktionen/Prozeduren sind unheimlich nützlich und genau das, was ich mir schon lange gewünscht habe!

Danke,
Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
03.05.2006  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

47.819 Betrachtungen

Unbenanntvor 0 min.
RudiB.07.04.2016
H.Brill26.11.2014
Peter Max Müller06.09.2014
mj04.05.2014
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie