Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
托管c+中的c#方法+;_C#_Memory_Managed C++ - Fatal编程技术网

托管c+中的c#方法+;

托管c+中的c#方法+;,c#,memory,managed-c++,C#,Memory,Managed C++,我正在创建一个c#dll库来扫描进程内存。 我有一个静态方法: int searchASCII(int pid, SByte[] text, int pos) { ReadProcessApi RApi = new ReadProcessApi(pid, pos); return RApi.ASCIIScan(text); } 希望在VisualC++中实现它的使用。 如果我想在c++中调用这样的方法,text p

我正在创建一个c#dll库来扫描进程内存。 我有一个静态方法:

int searchASCII(int pid, SByte[] text, int pos)
        {
            ReadProcessApi RApi = new ReadProcessApi(pid, pos);
            return RApi.ASCIIScan(text);
        }

希望在VisualC++中实现它的使用。 如果我想在c++中调用这样的方法,text param应该使用哪种类型:

搜索ASCII((int)pid,(char[])文本,(int)位置)

在当前场景中,我得到一个错误:

"cannot convert parameter from 'char [6]' to 'cli::array<Type,dimension> ^' "  
“无法将参数从'char[6]'转换为'cli::array^'”
如果要在C++\CLI中调用C#函数,则需要使用相同的类型。C#中的数组实际上是C++\cli中的
cli::array
。您将不能将C++(代码> > char [] /代码>转换为<代码> CLI:ARDUCTOR/<代码>。我想看看MSDN上的本机\托管

要从C++\CLI调用函数,必须创建如下数组:

cli::array<System::SByte> ^text = gcnew cli::array<System::SByte>(/* some_size */);
cli::array^text=gcnew cli::array(/*some_size*/);

检查一下post是错误的。它是C++/CLI,MC++是另一种没有数组的语言。