OpenFileDialog遇到的问题

mizuho_2006 2012-03-30 10:50:37
我在程序里出错时会记录错误日志。程序每2秒都会检测一下和Socket服务器的连接状态,如果错误就记录在日志中。因为服务端程序没有打开监听,所以程序会不停的记录错误日志,路径为程序的根目录的Errorlog文件夹。

现在我使用OpenFileDialog打开一个文件,默认浏览路径设为程序的启动路径。我发现每当我切换到另一个文件夹下时,都会新建一个Errorlog文件夹来记录日志,似乎把我浏览的目录当成当前目录了。。因为每2秒记录一次所以记录我浏览过的文件夹下都多出了一个错误日志文件夹。。。怎么才能避免这个情况呢。。因为记录日志的代码是引用的外部的dll无法修改,所以只能从OpenDialog这里看看能不能改了。

以下是我的代码


private void btnBrowser_Click(object sender, EventArgs e)
{
OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.Title = "选择文件";
fileDialog.InitialDirectory = Application.StartupPath.ToString();
fileDialog.Filter = "JPEG Files (*.jpg)|*.jpg|BMP Files (*.bmp)|*.bmp|PNG Files (*.png)|*.png";
fileDialog.FilterIndex = 1;
fileDialog.RestoreDirectory = true;

if (fileDialog.ShowDialog() == DialogResult.OK)
{
FileInfo file = new FileInfo(fileDialog.FileName);
txtImgUrl.Text = file.FullName;
}
}
...全文
132 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lfqsy 2012-03-31
  • 打赏
  • 举报
回复
要不设置成当前EXE对应的路径
mizuho_2006 2012-03-31
  • 打赏
  • 举报
回复
我原来设置的路径是d盘根目录,也不行的。
NSnaiL 2012-03-30
  • 打赏
  • 举报
回复
这是一个误解, StartupPath是指程序的起始位置, 不一定是exe所在的目录, 这是一个application的环境变量, 很多方法可以改变它.
tongnaifu 2012-03-30
  • 打赏
  • 举报
回复
没有你的测试环境,你把
fileDialog.InitialDirectory = Application.StartupPath.ToString();
修改成别的目录试试看

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧