0
private void btnlogin_Click(object sender, EventArgs e)
{
    string dir = "D://Login.hhh";
    if (!File.Exists(dir))
    {
        File.Create(dir);
    }

    string filePath = dir;
    string s = System.Environment.GetEnvironmentVariable("COMPUTERNAME");
    string s1 = getIP();
    using (StreamWriter swrObj = new StreamWriter(filePath, true))
    {
        swrObj.Write(s1 + "|" + s + "|" + Txtusername.Text + "|" + "user logged in on :|" + DateTime.Now.ToShortDateString() + " at " + DateTime.Now.ToShortTimeString());
        swrObj.Write("\t\t");
        swrObj.Write("\t\t");
        swrObj.WriteLine();
        MessageBox.Show("Login success");
    }
}

private void Loginform_Load(object sender, EventArgs e)
{ 

}
private string getIP()
{ 
    IPHostEntry host;
    string localIP = "?";
    host = Dns.GetHostEntry(Dns.GetHostName());
    foreach (IPAddress ip in host.AddressList)
    {
        if (ip.AddressFamily.ToString() == "InterNetwork")
        {
            localIP = ip.ToString();
        }
    }
    return  localIP;
} 

我正在使用上述代码获取单个用户的登录信息,但我想获取连接到服务器的多个用户的登录信息,并且该信息应保存在位于服务器中的目录中。谁能帮我。

4

2 回答 2

0

每次用户登录时,您都会创建一个新文件。尝试在每个登录事件中附加数据。File.Append(文件名); 您也可以在项目解决方案本身中创建一个目录并在其中添加文件。

于 2012-12-24T11:11:34.010 回答
0

我只能根据您的措辞假设这是基于 Windows 窗体的应用程序,而不是 Web 应用程序。

这必须有多安全,因为用户很容易操作数据。就我个人而言,我会在数据库上创建一个表并在那里记录这些信息。确保您的应用程序只有对该表的写入权限,然后您就知道记录没有被更改。

于 2012-12-24T11:14:04.880 回答