[DllImport( "ntdll.dll ", CharSet = CharSet.Auto)]
public static extern IntPtr memcpy(
IntPtr dst,
string src,
int count);
......
写:
IntPtr memFileHandle = CreateFileMapping(INVALID_HANDLE_VALUE, IntPtr.Zero, PAGE_READWRITE, 0, (uint)1024, "mWeightData1 ");
if (memFileHandle == IntPtr.Zero)
{
MessageBox.Show( "建立共享失败 ");
}
else
{
///IntPtr h_pmw = MapViewOfFile(memFileHandle, FILE_MAP_WRITE, 0, 0, (uint)100);
IntPtr h_pmw = MapViewOfFile(memFileHandle, FILE_MAP_WRITE, 0, 0, 0);
int s = Marshal.SizeOf(mwd);
if (h_pmw == IntPtr.Zero)
{
MessageBox.Show( "建立映射失败 ");
}
else
{
memcpy(h_pmw,textBox1.Text, textBox1.Text.Length*2);
}
}
.......
读:
IntPtr mMapHandle = OpenFileMapping( FILE_MAP_READ,false, "mWeightData1 ");
if(mMapHandle == IntPtr.Zero)
{
MessageBox.Show( "打开共享失败,请确认服务已启动 ");
}
else
{
WeightData mrw = new WeightData();
IntPtr h_rw = MapViewOfFile(mMapHandle,FILE_MAP_READ,0,0,0);//(uint)100
textBox2.Text =(string) Marshal.PtrToStringAuto(h_rw);//PtrToStringAnsi(h_rw,256);
}
public static extern IntPtr memcpy(
IntPtr dst,
string src,
int count);
......
写:
IntPtr memFileHandle = CreateFileMapping(INVALID_HANDLE_VALUE, IntPtr.Zero, PAGE_READWRITE, 0, (uint)1024, "mWeightData1 ");
if (memFileHandle == IntPtr.Zero)
{
MessageBox.Show( "建立共享失败 ");
}
else
{
///IntPtr h_pmw = MapViewOfFile(memFileHandle, FILE_MAP_WRITE, 0, 0, (uint)100);
IntPtr h_pmw = MapViewOfFile(memFileHandle, FILE_MAP_WRITE, 0, 0, 0);
int s = Marshal.SizeOf(mwd);
if (h_pmw == IntPtr.Zero)
{
MessageBox.Show( "建立映射失败 ");
}
else
{
memcpy(h_pmw,textBox1.Text, textBox1.Text.Length*2);
}
}
.......
读:
IntPtr mMapHandle = OpenFileMapping( FILE_MAP_READ,false, "mWeightData1 ");
if(mMapHandle == IntPtr.Zero)
{
MessageBox.Show( "打开共享失败,请确认服务已启动 ");
}
else
{
WeightData mrw = new WeightData();
IntPtr h_rw = MapViewOfFile(mMapHandle,FILE_MAP_READ,0,0,0);//(uint)100
textBox2.Text =(string) Marshal.PtrToStringAuto(h_rw);//PtrToStringAnsi(h_rw,256);
}