【问题标题】:Batch Open different programs depending on location根据位置批量打开不同的程序
【发布时间】:2013-03-05 04:59:22
【问题描述】:

是否有批处理代码/c#,例如,我有一个动画文件夹和一个电影文件夹,我想用程序 A 观看动画,用程序 B 观看电影。
有没有一种方法可以让我获得相同的文件类型 (.mkv/.avi/.mp4) 以根据其文件夹/硬盘驱动器位置使用不同的程序打开?
我假设我必须设置所有视频文件类型才能打开这批,但我不知道要输入的参数。
谢谢。

【问题讨论】:

  • 您可以通过编写一个使用提供的参数并标识路径的可执行文件来实现此目的,然后启动相应的应用程序。不过目标有点奇怪,真的有必要为动漫和常规节目分别应用程序吗?

标签: c# batch-file file-extension file-type


【解决方案1】:

您可以编写一个批处理文件,根据文件夹启动相应的应用程序,如下所示:

IF /I "%~dp1"=="C:\anime\" programA.exe %*
IF /I "%~dp1"=="C:\movie\" programB.exe %*    

然后右键单击您的一个文件并选择打开方式 - 选择默认程序,然后浏览到您刚刚创建的 .bat 文件。确保选中“始终使用所选程序打开此类文件”复选框。

从现在开始,您只需双击该文件即可启动正确的程序。

【讨论】:

    【解决方案2】:

    如果你找到了你的文件,你可以为它创建一个 FileInfo 对象,并通过以下方式检查它的目录路径:

    FileInfo file = new FileInfo(@"c:\Anime\Anime.avi"); 
    string dirPath = file.DirectoryName;
    
    if (dirPath == @"c:\Anime")
    {
      //Open with VLC
    }
    else if (dirPath == ...something else...)
    {
      //Open with something else
    }
    

    【讨论】:

    • 没关系,但我这样做是为了获得“右键单击打开方式”的快捷方式,我更愿意将 .filetype 默认程序设置为此批处理/c#我不必为要打开的每个文件编辑代码
    猜你喜欢
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 2011-05-31
    • 2018-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    相关资源
    最近更新 更多