Assembly MASM x86从proc返回字节数组
有没有办法将MASM DLL上x86 ASM的字节数组返回到C代码中Assembly MASM x86从proc返回字节数组,assembly,x86,masm,Assembly,X86,Masm,有没有办法将MASM DLL上x86 ASM的字节数组返回到C代码中 在我的ASM程序中,数组被更改了,我想在我的C代码中使用它。所以你真的想通过引用传递一个字节数组,而不是返回一个新的?我可以返回一个新的。它们都是在my proccalculateArray proc中初始化的,使用eax ebx ecx edx esi edi、lengthArray:DWORD、newLength:DWORD、tablica:PTR BYTE、tablicaDruga:PTR BYTE我将tablica更改
在我的ASM程序中,数组被更改了,我想在我的C代码中使用它。所以你真的想通过引用传递一个字节数组,而不是返回一个新的?我可以返回一个新的。它们都是在my proc
calculateArray proc中初始化的,使用eax ebx ecx edx esi edi、lengthArray:DWORD、newLength:DWORD、tablica:PTR BYTE、tablicaDruga:PTR BYTE
我将tablica更改为tablicaDruga,并将其返回到CreadyArray=MD5AsmDll.calculateArray(长度、新长度、校验和、readyArray)
@PeterCordes另外readyArray一开始是空的,它在calculateArray过程中填充了元素。它首先需要是一个函数参数吗?它不应该是返回值还是通过引用传递参数,但不能两者都是?我不使用MASM。但是是的,我想你应该像局部变量一样为它保留空间。最困难的部分是为它分配内存,以便C#可以使用。我想在C#中创建它会容易得多,并在调用asm函数之前分配所需的空间。但是,您可能无法避免让C#浪费时间将其归零或其他事情,而不是将指针传递到未初始化的空间。