| |
|
|
- page 1 - |
|
|
Weil du toujours pas verständlich erklärt la hâte, quoi nprocs sommes.
allô Nico,
merci pour den Hinweis et den Fil ici - malheureusement peux je avec cela mais rien anfangen là je pas savons peux, quoi Du pas verstehst.
Vlt. peux Du mir sous attention qui Documentation [...] dire, quoi Dir unklar ist.
Inline-Assembler:
|
|
|
| |
|
|
| |
|
- page 6 - |
|
|
Dietmar Horn | allô zusammen,
sur den réel Titel cet Threads "Was sommes native Funktionen?" à fond, ici la fois un Versuch qui Erklärung, quoi nativer Code eigentlich ist.
Auszug aus meinem XProfan-Lehrbuch, partie 8 (encore pas veröffentlicht, un größeres Update wird es voraussichtlich vers Ende des Jahres donner):
Nativer CodeNativer Code ist lediglich une autre Bezeichnung pour Maschinencode. ca ist qui systemnaheste Discours, qui vom Prozessor direct et sans vorherige Kompilierung verarbeitet et fonctionnement volonté peux. Im opposition trop Assembler ou bien anderen Programmiersprachen (comment z.B. XProfan) handelt es sich hierbei um une pour den les gens à peine verständlichen Binärcode (très vereinfacht ausgedrückt seulement aus "Nullen" et "Einsen" bestehend). qui Maschinencode wird dans qui règle de einem Assembler ou bien Kompiler erzeugt. direct dans Maschinensprache muss seulement programmiert volonté, si ne...aucune Assembler pour den Zielprozessor zur Disposition steht, quoi es heutzutage wohl à peine encore donner pourrait. Wird de qui Programmation dans Maschinensprache gesprochen, wird aujourd'hui üblicherweise qui Maschinenprogrammierung dans Assemblersprache sous Verwendung eines Assemblers gemeint, qui cela comme Textdatei vorliegende Programme dans binäre Maschinenbefehle traduit. qui Maschinensprache besteht aus einer Folge de Bits bzw. Bytes, qui dans cette forme pour uns comme les gens pratique unlesbar ist. Zum Erzeugen de Maschinencode sommes vereinfachende Tools geschaffen worden - so z.B. qui Assemblersprache. qui devoir des Assemblers besteht y, dem Programmierer quelques Unbequemlichkeiten des Programmierens dans reiner Maschinensprache abzunehmen. aussi avec XProfan peux inzwischen nativer Code erzeugt volonté, qui um un Vielfaches plus rapide abläuft, comme qui vom XProfan-Kompiler selbst erzeugte Code. Voraussetzung hierfür ist qui Verwendung des kostenlosen XPSE ("XProfan-Präkompiler et -Syntax-Enhancer") de David "iF" Strutz (XPSE-Downloadmöglichkeit: [...] ici quelques Feautures de XPSE: Erzeugen nativen Codes ab XProfan 11. Verwenden de Windows-APIs sans vous zuvor déclarer trop doit Inline-Assembler Echtes Multi-Threading et threadsichere Datentypen Natives Profan per nProc Kinderleichter Inline-Assembler avec Datentypenunterstützung Echtes unterbrechungsfreies SubClassing Nahtlose intégration wichtiger Datentypen Sicheres ProcAddr aucun ASM-Vorkenntnisse erforderlich avec XPSE sommes eh bien alors aussi Ausführungsgeschwindigkeiten de XProfan (comme Interpretersprache) possible, qui reinen Assembler- ou bien C-Programmen dans rien nachstehen. une compliquée installation de XPSE ist pas erforderlich. Es reicht völlig aus, qui folgenden Fichiers dans den XProfan-Dossier trop kopieren: XPSE.exe [...] Jwasm.exe [...] POLink.exe [...] Anschließend ist es lediglich encore erforderlich, im XProfan-Editor den Aufruf des XProfan-Interpreters Profan.exe par den Aufruf de XPSE.exe trop ersetzen. un angenehmer Nebeneffekt chez qui Verwendung de XPSE comme Präkompiler besteht y, qui XPSE avant dem Kompilieren une strengeren Syntax-Check des Programmcodes durchführt comme XProfan selber. Dadurch peux sich qui Programmierer un souvent zeitaufwändiges chercher pour Fehlern dans seinem Code ersparen, qui sich im ungünstigsten piège seulement pour qui Weitergabe des fertigen Programmes beim Anwender bemerkbar faire.
Salut 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.11.2009 ▲ |
|
|
|
|
Jörg Sellmeyer | [offtopic]je hab qui à gauche la fois dans anklickbare umgewandelt. là scheint un Bug im Forum trop son. si qui à gauche derrière dem Arrow stehen, volonté vous pas comme solche erkannt![/offtopic] |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 29.11.2009 ▲ |
|
|
|
|
Frank Abbing | Hab mir fois le Infos sur den Inline-Assembler de PureBasic durchgelesen. c'est IMHO primitivster Mist, on darf überhaupt seulement 3 Register verwenden dans qui 32 Bit-Version. aussi sonst gibt es Einschränkungen sans Ende. là lob je mir den XPIA, qui alles zulässt, quoi überhaupt possible ist avec MASM32/JWASM, sogar Macros.
Hab ici maintenant gelesen, cela XPSE qui technologie de XPIA kopiert et également JWASM/POLINK benutzt, à interne Dll trop bilden. Codes hab je pas grandiose entdeckt. quelle Libs sommes incorporé et quelle Macros. comment peux je weitere Libs einbinden? Solche Infos manquer encore gänzlich. |
|
|
| |
|
|
|
Nico Madysa | Kleine Anfrage: Wäre car un Zugriff sur quelque chose comment globale Variablen possible? cela pourrait pour XProfaner den Umgang avec eignen Subclassprocs erleichtern. |
|
|
| |
|
|
|
| [offtopic] Jörg Sellmeyer, Beitrag=55211, Zeitpunkt=29.11.2009je hab qui à gauche la fois dans anklickbare umgewandelt. là scheint un Bug im Forum trop son. si qui à gauche derrière dem Arrow stehen, volonté vous pas comme solche erkannt! cela Problem était un am Link klebendes TAB-marque! [/offtopic] |
|
|
| |
|
|
|
| Nico Madysa, Beitrag=55217, Zeitpunkt=29.11.2009
Kleine Anfrage: Wäre car un Zugriff sur quelque chose comment globale Variablen possible? cela pourrait pour XProfaner den Umgang avec eignen Subclassprocs erleichtern.
Per Global . KompilierenMarqueSéparationdeclare owp&
cls
owp&=setWindowLong(hWnd,gwl_wndProc,procaddr(hwnd.wndProc,4))
waitinput
end
nProc hwnd.wndProc
Parameters wnd&,msg&,wp&,lp&
global owp&
return callWindowProc(owp&,wnd&,msg&,wp&,lp&)
oc
|
|
|
| |
|
|
|
Nico Madysa | |
|
| |
|
|
|
| quoi comment? tu peux doch qui Adresse eines Bereiches per paramètre transfert!
Andernfalls, exposition nochmal: [...] (hab grad nochmal tour gedreht)
Pour Debugging nehme je gern exitprocess(long) ou bien settext(hWnd,"blub"). ^ ^. |
|
|
| |
|
|
|
Nico Madysa | Den Eintrag verstand je déjà, je erinnerte mich seulement pas seiner.
mon Problem était un Testkode suivant Art: 100 Buttons, en Handle dans einem Bereich sommes. une NProc soll per SetWindowLong zur Subclassproc des Fensters volonté um chez ~WM_SIZED qui Buttongrößen anzupassen. seulement peux je selbst einer Subclassproc oui aucun paramètre transfert, mais de irgendwoher muss qui Proc qui Handles beziehen. Daher globale Variablen.
je zähle qui Sekunden, jusque deiner Antwort, comment espace cela vieeel einfacher ginge. |
|
|
| |
|
|
|
| si Du une grenier changement vouloir: KompilierenMarqueSéparation ou bien beziehen de 100 Handles: KompilierenMarqueSéparation(ungetestet)
mais dim m#,4 pouvoir presque keinen Sinn, peux on doch juste
var m&=globalAlloc(gPTR,4) écrivons - pourrait cela Selbe son.
dans nProcs gibt es aussi Faible, mais comme Funktion: KompilierenMarqueSéparationso aussi avec byte, tambour gibts aussi getByte setByte getLong et setLong vlt. pour toi intéressant. |
|
|
| |
|
|
|
Nico Madysa | déjà bien sûr. mais une subclassende Procédure appelle oui dans aller règle pas je, mais Windows sur. |
|
|
| |
|
|
|
| quoi? cela ici funktioniert (naturellement) KompilierenMarqueSéparationGemerkt/Separiert von http://xprofan.com/thread.core?p=55223#55223
declare owp&
cls
owp&=setWindowLong(hWnd,gwl_wndProc,procaddr(hwnd.wndProc,4))
waitinput
end
nProc hwnd.wndProc
Parameters wnd&,msg&,wp&,lp&
global owp&
return callWindowProc(owp&,wnd&,msg&,wp&,lp&)
| 29.11.2009 ▲ | |
|
|
|