コード例 #1
0
ファイル: SharedMemoryArray.cs プロジェクト: Sony-NS/SharpMap
        public Array ToArray()
        {
            var blob = new SharedMemoryBlob(Process.GetProcessById(ProcessId), GetBaseAddress());

            var array       = Array.CreateInstance(ValueType, Length);
            var tempHandle  = GCHandle.Alloc(array, GCHandleType.Pinned);
            var destination = Marshal.UnsafeAddrOfPinnedArrayElement(array, 0);

            blob.ReadAndWrite(destination, ByteLength);
            tempHandle.Free();

            return(array);
        }
コード例 #2
0
ファイル: SharedMemoryArray.cs プロジェクト: Sony-NS/SharpMap
        public void CopyTo(IntPtr targetAddress)
        {
            var blob = new SharedMemoryBlob(Process.GetProcessById(ProcessId), GetBaseAddress());

            blob.ReadAndWrite(targetAddress, ByteLength);
        }