Ich will mit Assembler die Item Attribute auslesen, es werden in VS aber Fehler angezeigt:
Ich weis, dass ich den Wert in EAX und ECX einfach mit MOV in meine int variablen schreiben muss, allerdings kommen bei MOVSX und MOVZX die genannten Fehler. Woran liegt das?
Code:
std::pair<int,int> GetItemAttribute(DWORD ItemSlot,DWORD AttributeSlot)
{
int AttributeNmbr;
int AttributeWert;
__asm
{
PUSH AttributeSlot //Attribut 1-7
MOV ECX,DWORD PTR DS:[0x7CE01C]
PUSH ItemSlot //Slot des items
CALL GetItemAttributeCall
MOVSX EAX, WORD PTR SS:[LOCAL.2] //Inlineassembler: Syntaxfehler in 'Zweiter Operand'; 'constant' gefunden
MOVZX ECX, BYTE PTR SS:[LOCAL.3+3]//Hier das gleiche
}
std::pair <int,int> Tupel (AttributeNmbr,AttributeWert);
return Tupel;
}