C#:您如何为您的应用程序处理/解析消息,例如拖放相关文件类型?

标签 c#

C#:您如何处理/解析应用程序的消息,例如拖放相关文件类型?

假设我有一个文本文档应用程序,我希望它在以下情况下执行并打开一个文件,

1.) 一个 .txt 文档被拖到 exe 的顶部。

我怎样才能做到这一点,执行文本软件,第二,最终在文本文档软件中打开并显示文本文档?

最佳答案

您必须找到您的 Main 方法声明的位置,以确保其签名包含 args 参数,然后您可以检查 args 数组,您将找到在应用程序的 exe 上拖动的文件的完整路径名。现在您可以根据需要使用它。

例子:

static void Main(String[] args)
{
    string p = args[0];

    string e = Path.GetExtension(p);
    if (e == ".txt")
    {
        // It's a text file
    }
}

您还可以拖动多个文件并在同一个数组中找到它们的名称。 请记住,在我的示例中,我不检查 args 数组中是否确实存在某些元素,因此如果在启动应用程序时没有拖动任何内容(或作为参数传递),我可以获得 IndexOutOfBoundException 并且最后使用 Path.GetExtension 方法不会'无法向您保证该文件就是您所想的那样,只是它具有该扩展名。

关于C#:您如何为您的应用程序处理/解析消息,例如拖放相关文件类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/533749/

相关文章:

c# - 从ChildVM中获取必要的ViewModel并将其设置为ParentVM中的属性

c# - 在 ASP.NET MVC 中嵌套异步/等待调用

c# - 将 Entity Framework 对象序列化为 JSON

c# - 如何从 C# 启动外部可执行文件并在进程结束时获取退出代码

c# - 使用 AutoMock.GetLoose() 时,为什么我的断点永远不会被命中?

c# - ASP.NET 如何在请求中获取自定义 header ?

c# - 如何在 C# 中拥有抽象和覆盖常量?

c# - 链接任务的正确方法

c# - Unity - 游戏对象在击中预制件时不会被破坏

C# Windows 服务自终止服务