gpt4 book ai didi

c# - 两个应用程序同时使用两个文本文件共享数据

转载 作者:太空宇宙 更新时间:2023-11-03 13:27:20 25 4
gpt4 key购买 nike

我有两个 WPF 应用程序,当我希望文件从一个应用程序写入并读取从另一个应用程序写入的数据时,我在两个应用程序中使用相同的文本文件。但我做不到,因为这两个应用程序同时使用同一个文件。任何人都可以帮助我做到这一点吗?我写了这段代码,但什么也没做:

try
{
int nofiles = Directory.GetFiles("E:\\files", "*.txt").Length;
nofiles++;
StreamWriter write = new StreamWriter("E:\\files\\" + nofiles + ".txt");
write.WriteLine(itemId);
write.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
App.Current.Shutdown();

最佳答案

您可以使用 Mutex 使用进程间同步在这两个应用程序中。确保尽快释放 Mutex。在访问文件的所有进程中,您需要如下所示的内容来同步访问。

Mutex m = new Mutex(false, "MyMutex");
m.WaitOne();
//File read or writing code goes here.
m.ReleaseMutex();

Named system mutexes are visible throughout the operating system, and can be used to synchronize the activities of processes. You can create a Mutex object that represents a named system mutex by using a constructor that accepts a name, MSDN.

关于c# - 两个应用程序同时使用两个文本文件共享数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21955077/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com