大家好!我现在在做一个数据采集程序,要实现的功能就是通过数据采集卡先把数据采集进来,然后通过算法分析,之后在通过数据采集卡把数据输出。先不考虑算法。现在单独的采集部分程序和输出部分程序都是调通的,采集进来的数据是放在一段数组里面的,现在想把这个数组发给输出部分程序,通过输出程序把数组里面的数据输出去。输出程序中有一个函数BOOL ConvertAnalogValueToDigital(
   VARIANT  dataAnalogArray, 
   VARIANT* dataDigitalArray, 
   long dataCount
);
把这个数组作为该函数的第一个参数就可以了,
请问要怎么实现?不甚感激?

解决方案 »

  1.   

    [DllImport("kernel32.dll")]
            private static extern int CreateFileMapping(
                int hFile,
                IntPtr lpFileMappigAttributes,
                int flProtect,
                int dwMaximumSizeHigh,
                int dwMaximumSizeLow,
                string lpName); [DllImport("kernel32.dll")]
            private static extern int UnmapViewOfFile(IntPtr ptr);        [DllImport("kernel32.dll")]
            private static extern int MapViewOfFile(
                int hFileMappingObject,
                int dwDesiredAccess,
                int dwFileOffsetHigh,
                int dwFileOffsetLow,
                int dwNumberOfBytesToMap);        [DllImport("kernel32.dll")]
            private static extern int OpenFileMapping(
                int dwDesiredAccess,
                int bInheritHandle,
                string lpName);
    然后使用Marshal系列方法,比较麻烦,祝你好运!
      

  2.   

    为什么不使用Remoting的IPC协议呢?