2つのC++ DLLがあります。そのうちの一つは、以下の機能が含まれていますC++の関数をC#から呼び出す
BYTE* encrypt(BYTE *inOut, UINT inputSize, BYTE *secretKey, UINT secretKeySize).
のC#からこれら2つの機能を呼び出す方法があります:他の一つは、この機能が含まれている
void init(const unsigned char* initData, const unsigned char* key)
?私はC#で[DllImport]を使用してC++関数を呼び出すことができることを知っていますが、ポインタが苦労しています。
助けていただけたら幸いです!
はい、暗号化の戻り値はメモリに割り当てられます。通常、返されるデータのサイズは既知です(8バイト)。 重要なパラメータは、inOutとsecretKeyです。基本的には、0からinputSizeまたはsecretKeySizeで指定されたサイズまでのforを使用して、配列からすべてのデータを読み取ります。 – alex