明天的明天 永远的永远 未知的一切 我与你一起承担 ??

是非成败转头空 青山依旧在 几度夕阳红 。。。
  博客园  :: 首页  :: 管理

利用批处理文件实现 C#中程序自己删除自己

Posted on 2008-06-23 15:52  且行且思  阅读(710)  评论(0编辑  收藏  举报



using System.Runtime.InteropServices; 

//****************************************添加引用

 [DllImport("kernel32.dll")]
        public static extern uint WinExec(string lpCmdLine, uint uCmdShow);

        private void button1_Click(object sender, EventArgs e)
        {
            string vBatFile = Path.GetDirectoryName(Application.ExecutablePath) + "\\Zswang.bat";
            using (StreamWriter vStreamWriter =new StreamWriter(vBatFile, false, Encoding.Default))
            {

                vStreamWriter.Write(string.Format(
                ":del\r\n" +
                " del \"{0}\"\r\n" +
                "if exist \"{0}\" goto del\r\n" + //此处已修改
                "del %0\r\n", Application.ExecutablePath));
            }

            //************ 执行批处理
            WinExec(vBatFile, 0);
 
           //************ 结束退出

            Close();
        }