当前位置:编程学习 > C#/ASP.NET >>

USB不能结束,程序仍占用问题

现在遇到一个麻烦的事,下面一段代码,实现如下功能,在按钮按下后,弹出一个文件保存的对话框,
此时选择保存地为USB设备,点击确定后,文件能正常保存,可是在程序不退出的情况下,USB不能结束,
查看发现,程序还在占用USB,不知道怎么解决,望大虾帮忙。
类似的现象,比如说,我们用MSN传给USB上的文件给对方,当停留在USB上选择文件的画面时,USB被占用,这是正常的。
而且是被Explore.exe和MSN两个程序占用,可是当文件选好确定后,随着对话框的关闭,Explore.exe和MSN同时释放占用的USB。
我就想做到这种效果。急啊!!!

        private void button1_Click(object sender, EventArgs e)
        {
            System.Windows.Forms.SaveFileDialog saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();
            saveFileDialog1.Filter = "csv(*.csv)|*.csv";
            saveFileDialog1.Title = "文件保存";
            saveFileDialog1.AddExtension = true;
            if (saveFileDialog1.ShowDialog() != System.Windows.Forms.DialogResult.OK)
            {
            }
            else
            {
               
            }
        } --------------------编程问答-------------------- LZ保存后关闭文件了没? --------------------编程问答-------------------- 写个关闭 进程的程序  process   --------------------编程问答-------------------- 回1楼:
文件关闭了,要是不打开那个文件保存的对话框,直接传文件的fullname的话,就没问题,一切都ok

回2楼:
我这个程序还不想关闭,如果我这个程序关闭了,上面说的事也就没有了。

我现在不明白的地方是,为什么像MSN那种旧可以实现,
而我们随便写的程序就不行,只要打开那个对话框,关闭后,程序就还占用,有什么特殊处理? --------------------编程问答-------------------- 是不是保存之后的那个文件没有断开?
Stream  Close() --------------------编程问答-------------------- 回楼上的,你说的那个程序里已经写了。

而且我也说过,要是不出现那个文件保存的对话框,直接把路径加文件名作为String变量传过去,没有任何问题。

大家可以随便谢个程序,就像我上面给出的那段button_click()代码。
你可以把断电设在if (saveFileDialog1.ShowDialog() != System.Windows.Forms.DialogResult.OK) 这一行,
在没执行之前,没有任何程序占用USB,只有文件保存那个对话框以出现,再看有没有使用USB的程序,就会看到有两个,
一个是Explore.exe,另一个是你做的那个程序。而且,当你确定后,文件保存对话框关闭后,再查看,Explore.exe已经不占用了,
你写的那个程序还在占用,这个时候USB不能结束。

“WhoLockMe”有这么一个软件,右键点击USB那个盘符,就能查看时那个程序在使用USB盘。要是没有任何对话框弹出,
就说明没有程序用,此时可以结束USB。

有兴趣的朋友,可以上网找下我说的这个软件,要是没找到,留下你的mail,我会发给你。

在线等……


--------------------编程问答-------------------- 顶下,继续等待答案 --------------------编程问答-------------------- 哪位高人帮帮忙阿!!继续在线等
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,