-3

我想从右键菜单启动一个程序,这里是示例,程序正在更改文本文件中的一些文本并将其保存回同一个文件中。我即兴创作了很多,所以当程序启动时我按下按钮然后浏览一个文件,更改它需要的内容并再次写回它,但是,我认为如果我可以右键单击文件,然后单击程序,一切都会在不打开程序的情况下完成。这甚至可能吗? :) 谢谢

private void button1_Click(object sender, System.EventArgs e)
    {


        OpenFileDialog ofd = new OpenFileDialog(); 
        string filename = "";
        string path = "";
        if (ofd.ShowDialog() == DialogResult.OK)
        {
            path = System.IO.Path.GetFullPath(ofd.FileName);
        }

            System.IO.StreamReader ObjReader;
            ObjReader = new System.IO.StreamReader(path, Encoding.Default);
            textBox1.Text = ObjReader.ReadToEnd();
            ObjReader.Close();
            .
            .
            // do something
            .
            .
            System.IO.StreamWriter ObjWritter;
            ObjWritter = new System.IO.StreamWriter(path);
            ObjWritter.Write(textBox1.Text);
            ObjWritter.Close();
            Application.Exit();



    }
4

2 回答 2

2

What you need is to add your application exe to Windows Explorer context menu.

For a example, check this how-to

http://www.howtogeek.com/107965/how-to-add-any-application-shortcut-to-windows-explorers-context-menu/

于 2013-09-21T03:05:58.223 回答
0

我想,您需要添加以将您的应用程序添加到资源管理器的右键单击中。例如:假设您的应用程序是记事本,并且您想添加一个条目以在记事本中打开任何文件。开始创建一个名为“发送到记事本”的新键regedit.exe中的以下路径:

HKEY_CLASSES_ROOT\*\shell

然后在发送到记事本中创建一个名为command的新键,然后将以下命令添加到命令的默认条目。或者只需通过双击添加此键。

创建或添加密钥后,尝试右键单击文件(最好选择文本文件),您将看到一个名为“发送到记事本”的条目。如果单击它,文件将在记事本中打开。

希望这足以为您提供一个良好的开端。

于 2013-09-21T12:39:21.130 回答