Deutsch
Umfragen

Nutzt ihr Header?

 

Nico
Madysa
Seit geraumer Zeit verfügt (X)Profan über die Mächtigkeit, Header-Dateien verwenden können zu wollen. Letzte Woche schrieb ich zum ersten Mal einen Header.
Und mir fiel auf, dass ich hier in der Community bisher noch nichts über Header gelesen hatte. Und da stellte sich mir die Frage, die ich nun euch stelle:

Wie oft werden Header benutzt, und wenn, wie wichtig/nützlich/cool sind sie?

Ich hoffe natürlich nicht nur auf Abstimmungen, sondern auch auf weitere Beiträge.
 
Nico Madysa
28.04.2006  
 



Die Compilierung dauert zwar länger, aber bevor ich mir die Konstanten und Structuren alle zusammensuche und selber Eintrage lieber ne Header-Datei
 
28.04.2006  
 




Nico
Müller
kann mir jemand sagen was header sind?
 
WinXP, 2200MHz, 256MBRAM, Nvidia Geforce4 MX 440 with AGP8x, Profan8.0a
Das ist Matschaugeneule. Kopiere Matschaugeneule in deine Signatur und hilf ihr so auf ihrem Weg zur Weltherrschaft. Gegen Hase
29.04.2006  
 




Rolf
Koch
Hi bin mal ganz frech und kopiere hier einfach den Abschnitt Header aus der Profanhilfe hierhin
[box:cb4201f111]
$H <Dateiname>

Wer C kennt, kennt auch die Headerdateien, dort üblicherweise mit der Endung .h. Ein ähnliches Konzept wurde nun auch in XProfan verwirklicht, hier mit der Endung .ph. Um die Headerdatei(en) anzugeben, die im Programm genutzt werden, nutzt man die Direktive $H:

$H windows.ph

Die XProfan-Headerdateien (*.ph) werden dort gesucht, wo auch die Includedateien gesucht werden. Die Einstellung des Includepfades gilt auch für die Header.

Die Headerdateien sind nichts anderes als Übersetzungstabellen. Bestimmte Ausdrücke im Programmtext, die dort durch ein ~ gekennzeichnet sind, werden durch andere vom Precompiler beim Einlesen des Programmes durch den Interpreter bzw. Compiler ersetzt. Auf diese Weise können z.B. die zahlreichen Konstanten, Strukturdefinitionen und API-Aufrufe in der Headerdatei beschrieben werden. Jede Zeile der Headerdatei hat vor dem Gleicheitszeichen den String der ersetzt werden soll und danach bis zum letzten Semikolon der Zeile den XProfan-Ausdruck, durch den er ersetzt wird.

Als Beispiel ein Headerdateiauszug aus WINDOWS.PH:

Konstanten für ShowWindow

SW_HIDE = 0;
SW_SHOWNORMAL = 1;
SW_NORMAL = ~SW_SHOWNORMAL; alte Form
SW_SHOWMINIMIZED = 2;
SW_SHOWMAXIMIZED = 3;
SW_MAXIMIZE = ~SWSHOWMAXIMIZED;
SW_SHOWNOACTIVATE = 4;
SW_SHOW = 5;
SW_MINIMIZE = 6;
SW_SHOWMINNOACTIVE = 7;
SW_SHOWNA = 8;
SW_RESTORE = 9;

SW_SHOWDEFAULT = $0A;
SW_MAX = $0A;

ShowWindow( = External(user32.dll,ShowWindow,;

Kommentare werden - wie in XProfan selbst - durch ein gekennzeichnet, das REM ist nicht erlaubt. Was zwischen Gleichheitszeichen und dem letzten Semikolon steht, muss in XProfan interpretierbar sein. Es dürfen allerdings wiederum Erseztzungsausdrücke, gekennzeichnet durch das ~, vorkommen.

Das dazugehörige XProfan-Programm könnte dann wie folgt aussehen:

$H windows.ph

Cls
~ShowWindow(%hWnd, ~SW_MAXIMIZE)

Ebenso können Strukturdefinitionen in einer Headerdatei untergebracht werden:

RECT = Top&,Left&,Right&,Bottom&;

Im Programm könnte dann stehen:

Declare Rechteck#
Struct TRECT = ~RECT
Dim Rechteck#,TRECT

With Rechteck#
.Top& = 10
.Left& = 120
.Right& = 35
.Bottom& = 100

EndWith

Hiermit sind die Möglichkeiten der Headerdateien nur ansatzweise angedeutet! Eine Umsetzung der Datei WINDOWS.PAS aus Delphi mit nahezu allen Definitionen der Windowskonstanten und -Funktionen liegt bei. Ebenso einige anderen Headerdateien mit Messages, Strukturen, etc. Wenn diese Dateien eingebunden sind, wird die Nutzung der Windows-API erheblich vereinfacht. Aber auch außerhalb der Nutzung fremder DLLs ergeben sich zahlreiche Möglichkeiten.

Ach ja: Der Vorteil der Headerdatei gegenüber einer Includedatei mit Konstanten und DEFs? Die Includedatei wird immer komplett mitkompiliert und vergrößert das fertige Programm. Die Headerdatei taucht im Kompilat ÜBERHAUPT NICHT auf. Alle Ersetzungen werden beim Compilieren direkt vorgenommen. Das dürfte sich auch sehr positiv auf die Ausführungsgeschwindigkeit auswirken. Dafür dauert das Starten im Interpretermodus und das Compilieren etwas länger.

Hinweis: Die in einer Struktur verwendeten Variablentypen werden durch ihr Postfix, ähnlich der XProfan-Variablen gekennzeichnet. % steht für eine 2-Byte-Variable (Word), & steht für eine 4-Byte-Variable (Long), # steht für eine beliebige Größe, die in Klammern angegeben wird, und $ für eine String-Variable. Näheres siehe hier!

Hinweis: Das H muss groß geschrieben sein!
[/box:cb4201f111]
 
29.04.2006  
 




Dietmar
Horn
@Nico: Header-Dateien kannst Du derzeitig noch nicht nutzen, weil es diese erst ab XProfan gibt.

Gruß
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
29.04.2006  
 



[quote:87c9c69a28=Dietmar Horn]@Nico: Header-Dateien kannst Du derzeitig noch nicht nutzen, weil es diese erst ab XProfan gibt.

Gruß
Dietmar[/quote:87c9c69a28]Header-Dateien gibts IMHO seit Profan 7.0
 
29.04.2006  
 




RGH
[quote:1feedfd659=TS-Soft][quote:1feedfd659=Dietmar Horn]@Nico: Header-Dateien kannst Du derzeitig noch nicht nutzen, weil es diese erst ab XProfan gibt.

Gruß
Dietmar[/quote:1feedfd659]Header-Dateien gibts IMHO seit Profan 7.0 [/quote:1feedfd659]
Sehr richtig: Header-Dateien wurden mit Profan 7.0 eingeführt!

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
29.04.2006  
 




Dietmar
Horn
Ist trotzdem noch nix für Nico, weil wir im Grundkurs mit Profan 6.6 arbeiten.

Es sei denn, Roland erlaubt mir, zukünftig im Kurs eine höhere Version verwenden zu dürfen ...

Gruß
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
29.04.2006  
 




RGH
[quote:c87f38b585=Dietmar Horn]Ist trotzdem noch nix für Nico, weil wir im Grundkurs mit Profan 6.6 arbeiten.

Es sei denn, Roland erlaubt mir, zukünftig im Kurs eine höhere Version verwenden zu dürfen ...

Gruß
Dietmar[/quote:c87f38b585]
Hm, darüber könnte man diskutieren ... Schreib mir mal ne Mail

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
29.04.2006  
 




Nico
Müller
ich kann den Header auf der einen als auch auf der anderen nicht nutzen, wollt mich eben nur mal kundig machen. Jetzt bin ich wenigstens etwas schlauer.
 
WinXP, 2200MHz, 256MBRAM, Nvidia Geforce4 MX 440 with AGP8x, Profan8.0a
Das ist Matschaugeneule. Kopiere Matschaugeneule in deine Signatur und hilf ihr so auf ihrem Weg zur Weltherrschaft. Gegen Hase
30.04.2006  
 




Dietmar
Horn
[box:47dc59803a]ich kann den Header auf der einen als auch auf der anderen nicht nutzen[/box:47dc59803a]
Müssen sowas meine klitzekleinen, nikotin-verkalkten und uralten Uhu-Hörnchen-Gehirnzellen wirklich noch kapieren können?

Kannste mich dbzgl. vor kommenden Freitag eventuell aufklären???

Danke im voraus!

Gruß
Dietmar
 
Multimedia für Jugendliche und junge Erwachsene - MMJ Hoyerswerda e.V.  [...] 

Windows 95 bis Windows 7
Profan² 6.6 bis XProfan X2 mit XPSE

Das große XProfan-Lehrbuch:  [...] 
30.04.2006  
 





Headerdateien sind auch nur Menschen Dietmar!
 
30.04.2006  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

9.325 Betrachtungen

Unbenanntvor 0 min.
Andreas Koch21.03.2012

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