0
我在寫入txt文件時遇到問題。如何在txt文件中編寫字符串,並在其他用戶打開應用程序時將其用於消息?
我的想法:
我想加載表單並創建一個打開的文件。如果表格也關閉文件。並且在Form_load方法中,我創建了第二個文件,其中包含用戶和machinname的信息,我希望在第二個文件(user_log)中寫入。如果其他用戶啓動應用程序,我希望他看到一個帶有此應用程序的用戶名稱的消息框。
這裏我的代碼:
private void Form1_Load(object sender, EventArgs e)
{
try
{
//Globale Datei wird erzeugt
var stream = File.Open("log.txt", FileMode.OpenOrCreate);
global_stream = stream;
//Benutzername und Rechnernummer wird ermitellt
string username = Benutzer.GetUsername();
string machine = tarasov_lib.Computer.GetMachineName();
// User_Log wird erstellt
using (var user_log = File.OpenWrite("user.txt"))
{
user_log.Write("Benutzername: " + username + " Rechnernummer: " + machine); //error
}
}
catch (Exception)
{
//Daten werden aus der User_log gelesen
TextDatei datei = new TextDatei();
string info = datei.ReadLine("user.txt", 0);
MessageBox.Show(info);
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
global_stream.Close();
}
你得到什麼錯誤?嘗試將Catch參數更改爲'(Exception ex)',然後在Catch塊中使用'MessageBox.Show(ex.Message)'。這將顯示觸發該異常的錯誤。 – tinstaafl
問題是,如果你不關閉你的'file1'和'file2'。其他用戶打開應用程序將會出錯,因爲應用程序無法打開文件,因爲它被使用 –
非常糟糕的做法,不安全,您不能打開一個文件,讓另一個進程打開並工作,除非您有一個代理在這裏這樣做。 – 2013-07-16 08:00:29