| |
|
|
| KompilierenMarqueSéparation {$cleq}
cls
subClass hWnd,true
do {waitInput}
subClassProc{
select sWnd
caseOf hWnd
select sMessage
caseOf wm_getminmaxinfo
pokeDW sLparam+24,600
pokeDW sLparam+28,420
pokeDW sLparam+32,800
pokeDW sLparam+36,600
endSelect
endSelect
setWinProc true
}
pokedw(long adr,float v){
long vi
rtlMoveMemory(adr+2,addr(vi),2)
vi=int(v-(vi*2^16))
rtlMoveMemory(adr,Addr(vi),2)
}
ou bien KompilierenMarqueSéparationDECLARE __cf1&
Def __cf1(2) !KERNEL32,GetProcAddress
Def __cf2(1) !KERNEL32,GetModuleHandleA
__cf1&=__cf1(__cf2(KERNEL32),RtlMoveMemory)
CLS
SUBCLASS %HWND,1
WHILE 1
WAITINPUT
ENDWHILE
SUBCLASSPROC
SELECT &SWND
CASEOF %HWND
SELECT %SMESSAGE
CASEOF $0024
POKEDW &SLPARAM+24,600
POKEDW &SLPARAM+28,420
POKEDW &SLPARAM+32,800
POKEDW &SLPARAM+36,600
ENDSELECT
ENDSELECT
SETWINPROC 1
endproc
proc POKEDW
PARAMETERS ADR&,V!
var VI&=0
call(__cf1&,ADR&+2,ADDR(VI&),2)
VI&=INT(V!-(VI&*2^16))
call(__cf1&,ADR&,ADDR(VI&),2)
endproc
|
|
|
| |
|
|
|
| ...quoi mich daran erinnert déjà x la fois vorzuschlagen cela peek et poke niemals dans einem XProfan manquer darf/peux/sollte/wird. |
|
|
| |
|
|
|
RGH | POKEDW ADDR& + OFFSET&, WERT& WERT& = PEEKDW(ADDR& + OFFSET&)
ist identique avec
LONG ADDR&, OFFSET& = WERT& WERT& = LONG(ADDR&, OFFSET&)
Es est arrêt seulement anders.
Salut 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 | 22.02.2008 ▲ |
|
|
|
|
Frank Abbing | Gibt es encore Speicherarten, sur qui LONG pas zugreifen peux? Z.B. par API definierte grenier? était zumindest dans précédent Profanversionen so. |
|
|
| |
|
|
|
RGH | Beim Befehl LONG doit comme erster paramètre un Variablenname stehen. ca darf mais aussi un LongInt (&) ou bien Integer(%) son. un Ausdruck ist ici (encore?) pas gestattet.
chez qui Funktion LONG darf qui erste paramètre un beliebiger Ausdruck son. (aussi si es dans qui Aider pas à qui grand Glocke gehängt wird. ;) )
avant Version 11 galt ici qui gleiche Einschränkung comment beim Befehl et dans précédent Versionen (je ne sais pas plus oui c'est ca, quand je cela geändert habe) étions dans beiden Fällen seulement Bereichsvariablen erlaubt.
Salut 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 | 22.02.2008 ▲ |
|
|
|
|
Frank Abbing | merci, Roland! cela sollte generell pour alle Befehle/Funktionen zutreffen, qui sur Bereiche ou bien Cordes zugreifen. |
|
|
| |
|
|
|
RGH | Frank Abbing
merci, Roland! cela sollte generell pour alle Befehle/Funktionen zutreffen, qui sur Bereiche ou bien Cordes zugreifen.
je werde encore la fois chercher, wohin je là encore quoi 1faire peux. (dans qui règle ca va oui seulement tout autor, quelques Sicherheitsabfragen herauszunehmen. Prinzipiell finde je alles sympathique, quoi den Code schlanker pouvoir, mais den Anwender quand même pas im pluie stehen peut.)
Salut 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 | 22.02.2008 ▲ |
|
|
|
|
Frank Abbing | vois je genauso! Zumal Je l' Unterschied entre Cordes et Bereichen pas einsehe. Im Grunde ist grenier oui grenier. je wäre froh sur chacun Lockerung dans cette Beziehung. |
|
|
| |
|
|