Tag: ipc

读取内存映射文件或内存映射视图访问器的所有内容,而不知道它的大小

我需要类似于ReadToEnd或ReadAllBytes的东西来使用MappedViewAccessor读取MemoryMappedFile的所有内容,如果我不知道它的大小,我该怎么办呢? 我已经搜索过了,我已经看到了这个问题,但这不是我要找的东西: 如何从.NET中的内存映射文件中快速读取字节? 编辑: 有一个问题,(int)stream.Length没有给我正确的长度,而是给出了使用的内部缓冲区的大小! 我需要刷新这个问题,因为它非常紧迫。

通过管道在c ++和c#之间进行通信

我想通过管道将数据从ac#应用程序发送到c ++应用程序。 这就是我所做的: 这是c ++客户端: #include “stdafx.h” #include #include int _tmain(int argc, _TCHAR* argv[]) { HANDLE hFile; BOOL flg; DWORD dwWrite; char szPipeUpdate[200]; hFile = CreateFile(L”\\\\.\\pipe\\BvrPipe”, GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); strcpy(szPipeUpdate,”Data from Named Pipe client for createnamedpipe”); if(hFile == INVALID_HANDLE_VALUE) { DWORD dw = GetLastError(); printf(“CreateFile failed for Named Pipe client\n:” ); } […]

读取.NET中的文件内容更改

在Linux中,许多IPC都是通过在一个进程中附加文件并从另一个进程读取新内容来完成的。 我想在Windows / .NET中执行上述操作(使用普通的IPC如管道太麻烦)。 我将附加到Python进程中的文件,并且我想在每次FileSystemWatcher报告事件时读取更改并且只读更改。 每次我在寻找更改时,我都不想将整个文件内容读入内存(文件会很大) 每个追加操作都会附加一行数据,这些数据以唯一的递增计数器(时间戳+键)开头,并以换行符结束。

使用IPC在Python和C#之间进行通信的最简单方法?

我有一些C#代码需要调用Python脚本数千次,每次传递一个字符串,然后期望浮回。 python脚本可以使用任何版本的Python运行,所以我不能使用Iron python。 我建议使用IPC命名管道。 我没有这方面的经验,也很难弄清楚如何在C#和Python之间做到这一点。 这是一个简单的过程,还是我正在寻找相当数量的工作? 这是解决我问题的最佳方法吗?

.NET中的进程间通信

我有一个核心.NET应用程序,需要产生一个子进程的abitrary数量。 这些进程需要能够访问核心应用程序中的某种forms的状态对象。 什么是最好的技术? 我将在进程(位图)之间移动大量数据,因此需要快速。

将一个进程对象的stdout重定向到另一个进程对象的stdin

如何设置两个外部可执行文件从ac#应用程序运行,其中第一个stdout从第二个路由到stdin? 我知道如何使用Process对象运行外部程序,但我没有看到像“myprogram1 -some -options | myprogram2 -some -options”这样的方法。 我还需要捕获第二个程序的stdout(示例中的myprogram2)。 在PHP中我会这样做: $descriptorspec = array( 1 => array(“pipe”, “w”), // stdout ); $this->command_process_resource = proc_open(“myprogram1 -some -options | myprogram2 -some -options”, $descriptorspec, $pipes); $ pipes [1]将成为链中最后一个程序的标准输出。 有没有办法在c#中实现这一目标?

从一个正在运行的控制台应用程序发送消息

我有一个控制台应用程序正在与ftp服务器进行一些冗长的同步。 另一个控制台应用程序准备一个本地文件系统与一些所需的更新文件 然后第二个将等待第一个完成,然后交换最终目录名称,以便它在Web上可见。 我搜索了使同步应用程序与第二个应用程序进行通信的最佳方法,即它完成了它的工作。 看起来像使用IPC的数据复制是最适合的解决方案。 问题有两个: 我对吗? 是否有更直接的方法来获得相同的结果? 是否有托管(.net)方式来做到这一点?

在C#中进行进程间通信的最简单方法是什么?

我有两个C#应用程序,我希望其中一个发送两个整数到另一个(这不一定很快,因为它每隔几秒只调用一次)。 最简单的方法是什么? (它不一定是最优雅的。)

最简单的方法来进行跨appdomain调用?

我需要在另一个appdomain中调用对象的方法(传递param并获得结果)。 想法? UPD这两个AppDomain都不是由我的代码创建的(主机应用程序创建它,然后我的代码被调用)。 如何从另一个AppDomain访问?

将文本插入另一个应用程序的文本框中

如何使用C#或C ++将文本插入另一个应用程序的文本框中? 我很久以前这样做了,似乎记得有关使用应用程序HWND的一些事情。 但是,由于对应用程序的每个实例的更改,我觉得我不记得完整的故事。 我是否以某种方式获取正在运行的应用程序列表,提取我想要的那个,从中获取HWND然后……嗯….那么什么? 🙂