關於C# 操作 “Everything” 的使用,超好用


關於everything 的強大還真不是忽悠的,下面是自己的一些處理方法

1:新建一個控制台項目(這個任何項目都可以請隨意開心就好)

2:下載  “Everything” 搜索引擎,下載 “ES” ES是一個命令行界面,用於從命令提示符搜索Everything;下載連接:https://www.voidtools.com/zh-cn/downloads/#cli

3:把 “Everything.exe” 和 “ES.exe” 放在項目根目錄

以上是開發前的 “硬裝” 缺一不可,一下以代碼的形式為大家呈現 “軟裝”

1:新建一個控制台應用程序

2:添加一個 “CmdHelper” 工具類用於通過啟動ES執行相關命令執行Everything搜索

    public class CmdHelper
    {
        private static string CmdPath = @"C:\Windows\System32\cmd.exe";

        public static void RunCmd(string cmd, out string output)
        {
            //說明:不管命令是否成功均執行exit命令,否則當調用ReadToEnd()方法時,會處於假死狀態
            cmd = cmd.Trim().TrimEnd('&') + "&exit";

            using (Process p = new Process())
            {
                p.StartInfo.FileName = CmdPath;
                p.StartInfo.UseShellExecute = false;        //是否使用操作系統shell啟動
                p.StartInfo.RedirectStandardInput = true;   //接受來自調用程序的輸入信息
                p.StartInfo.RedirectStandardOutput = true;  //由調用程序獲取輸出信息
                p.StartInfo.RedirectStandardError = true;   //重定向標准錯誤輸出
                p.StartInfo.CreateNoWindow = true;          //不顯示程序窗口
                p.Start();                                  //啟動程序

                //向cmd窗口寫入命令
                p.StandardInput.WriteLine(cmd);
                p.StandardInput.AutoFlush = true;

                //獲取cmd窗口的輸出信息
                output = p.StandardOutput.ReadToEnd();
                p.WaitForExit();//等待程序執行完退出進程
                p.Close();
            }
        }

    }

3:主程序傳值啟用,注意啟動程序之前先啟動“Everything” 

        public static void Main(string[] args)
        {
            string str = "";

            //比如搜索電腦里的"mp4",注意中間有空格
            string cmd = "es.exe *mp4";
            CmdHelper.RunCmd(cmd, out str);

            Console.WriteLine("{0}", str.ToString());
            Console.ReadKey();
        }

4:效果圖

 

結尾:Everything是一個強大,輕便,靈活的搜索工具,對於特殊需求的開發還是極為有用的;出於好奇便研究了一下以供有興趣的朋友參考,碼農不易如果對你有用,打賞一下給個支持!

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM