如何从另一个应用程序读取内存-共享数据
本文关键字:内存 共享 数据 读取 应用程序 另一个 | 更新日期: 2023-09-27 18:10:31
我们可以在内存中读取/写入数据:
static void Main(string[] args)
{
using (var ms = new MemoryStream())
{
var sw = new StreamWriter(ms);
sw.WriteLine("Hello World");
sw.Flush();
ms.Position = 0;
var sr = new StreamReader(ms);
var myStr = sr.ReadToEnd();
Console.WriteLine(myStr);
}
Console.WriteLine("Press any key to continue.");
Console.ReadKey();
}
现在我想在Ram(内存=随机访问内存)上写入数据,并从另一个应用程序n读取这些数据?
我怎么能做到这一点和共享在内存中的字符串?
重要提示:我不想在硬盘上写任何数据。
编辑:我的。net版本是3.5
更新为。net 3.5
内存映射文件在windows中已经有一段时间了,所以即使是。net 3.5也没有它们,它仍然可以包装本机api。Github项目filemap就是这样做的。不幸的是,他们没有例子如何在两个进程之间共享内存映射文件。
这个答案对于。net Framework 4.6和4.5
很有用。3.5不是
我不认为你可以在两个进程之间共享内存流。最接近的是内存映射文件。