| |
|
|
Matthias Arlt | my first try with Assembler style itself dank Franks Einführungskurs rather as virtual...! now have I but the following trouble or. NEN fallacy drin:
an ASM-routine determined a String and writes this in a area. the Reading works with invoke MessageBox , 0, addr buffer, etc. fine. If I now instead of spending in a Messagebox whom String in the Profan-Program weiterverarbeiten wants, How commit I this correctly? (addr buffer goes Yes only to one invoke...)
Matthias |
|
|
| WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 12/12/06 ▲ |
|
|
|
|
Jörg Sellmeyer | If you whom String one area have, müßtest You it with text$=String$(B#,Addr&) read can. where Addr& = 0 is, if the String at the beginning the Bereichs standing. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 12/12/06 ▲ |
|
|
|
|
Michael Dell | in the rule is Buffer yes a DWord (Long) the on a Speicherbereich shows. then ought to as last commands mov eax, buffer wealthy.
I persöhnlich would in XProfan a area or a with Chr$(0) gefüllten String$ as additional Parameter transfer and this then z.B.: with invoke MemCopy... The data transfer, the has then whom benefit the You all memory in the function to that end there enable can. thereby can You then with eax yet a Error Code give back, so becomes the too in the WinAPI often made. |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 12/12/06 ▲ |
|
|
|
|
Matthias Arlt | @Jörg just as I thought indeed, but...
declare txt# dim txt#,256
Folgender code in the begot DLL
AsmStart LVGetItemText
Parameters hdl&,spalte&,txt#
LOCAL lvi:LV_ITEM
invoke SendMessage, para1, LVM_GETNEXTITEM, -1, LVNI_FOCUSED
mov lvi.iItem, eax
mov ebx, para2
mov lvi.iSubItem, ebx
mov lvi.imask, LVIF_TEXT
lea eax, para3
mov lvi.pszText, eax
mov lvi.cchTextMax, 256
invoke SendMessage, para1, LVM_GETITEM, 0, addr lvi
invoke MessageBox, 0, addr para3, 0, MB_OK
mov eax, para3
AsmEnd
moreover in Profan
...appeal the DLL-function with ...hdl&,spalte&,txt#)
print string $(txt#,0) remaining erfolglos, during Messagebox correctly fünktioniert
where means lying my Error ???
@Michael thanks, I werds time with MemCopy try. time see... |
|
|
| WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 12/12/06 ▲ |
|
|
|
|
Michael Dell | I see, here could one simple Return txt# to mov eax, para3 wealthy. If not working declariere txt2# with the equal werten How txt# and write Return txt2# and to the function print string$(txt2#,0). |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 12/12/06 ▲ |
|
|
|
|
Jörg Sellmeyer | ought to that here not hdl&,spalte&,Addr(txt#)) hot? |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 12/12/06 ▲ |
|
|
|
|
Matthias Arlt | so, any mutants durchprobiert (txt#...txt2#...addr(txt#)...), but Result unfortunately How had. During under Profan7 still yet unbrauchbare characters with string$(txt#,0) read go, happens under XProfan to the Messagebox mere garnichts. try with invoke MemCopy... hit because of Access violation ditto fehl. the puzzle over goes means moreover... |
|
|
| WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 12/12/06 ▲ |
|
|
|
|
Frank Abbing | lea eax, para3 mov lvi.pszText, eax mov lvi.cchTextMax, 256
must heissen:
m2m lvi.pszText, para3 mov lvi.cchTextMax, 256
or
mov eax, para3 mov lvi.pszText, eax mov lvi.cchTextMax, 256
para3 is Yes the Zeiger on a String and the Listviewmessage expects too a Zeiger on a String.
mov eax, para3 AsmEnd
is really balderdash, because the Returnwert = txt# is. Übrigens can you rather whom Debugger in lieu of of/ one Messagebox benefit, circa Zahlenwerte or Strings view. Probier time:
PrintDec eax
or
PrintStringByAddr para3
P.s.: lovely, that you my course fallen has. |
|
|
| |
|
|
|
Matthias Arlt | @Frank best Thanks, functions perfect ! have me very helped !!!
otherwise works the DLL-create already integrally well. I have your XPIA quasi as Standalone-Tool in PRFellow eingebunden and bastle me so on right comfortable point from the editor out my DLLs (for presently yet Profan7) together. Ggf. load I the time as PRFellow-expansion here high...
Matthias |
|
|
| WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 12/12/06 ▲ |
|
|
|
|
Frank Abbing | lovely, the can certainly the a or others use. PrFellow glad itself Yes still grosser popularity. |
|
|
| |
|
|
|
Matthias Arlt | I have meanwhile another further Completed: one Stringvergleich. Folgender code functions of course as such, supply but always mismatched back. even if Pufferinhalte definitiv same are:
... cld mov ecx,sizeof Buffer2 lea esi,Buffer1 lea edi,Buffer2 repe cmpsb
jnz mismatched jz same ...
have already unterschiedlichste mutants durchprobiert, but unfortunately erfolglos...!?
Matthias |
|
|
| WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 12/17/06 ▲ |
|
|
|
|
Frank Abbing | repe cmpsb is veraltert. Nimm in lieu of which rather The APIs lstrcmp(), or. lstrcmpi(). Safer and plenty faster. |
|
|
| |
|
|