Monthly Archives: 12月 2018

2018-12-18 ,

コマンドラインから Windows Search で全文検索

(追記: PowerShellからWindows Searchで検索するを書きました)

以前 anything.elでファイル検索(Windowsの場合) という記事でADO経由で検索するプログラム(20100701_winsearch.cpp)を作ったのですが、もう少し汎用的なものを作ってみました。

misohena/adoquery: Windows ADO Query Command

これ(adoquery.exe)を使うとSQLベースクエリを直接書けます。

例えば

  • ファイル名にhelloを含む
  • テキストカラム(タイトルや内容)にhelloを含む

ファイルを検索するには次のようにします。

adoquery /conn "Provider=Search.CollatorDSO;Extended Properties='Application=Windows';" /query "SELECT TOP 10 System.ItemFolderPathDisplay, System.FileName FROM SystemIndex WHERE (System.FileName Like '%hello%') or Contains('hello')" /format "%1%\\%2%" /header ""

SQLの詳しい書き方は次のページに書いてあります。

Querying the Index with Windows Search SQL Syntax - Windows applications | Microsoft Docs

Using SQL and AQS Approaches to Query the Index にも書いてありますが、クエリを投げられれば言語は何でも良いです。今回はC++&ADOでやりましたが、VBScriptの例なんかも載ってます。

2018-12-11 ,

Node.jsで書いたプログラムをタスクトレイに入れる

Node.jsで書いたものをWindows上で起動させっぱなしにする方法は色々あるみたいなんですがどれも今ひとつよく分からなかったのでやりたいことは単にコンソールウィンドウが鬱陶しいからタスクトレイに押し込んで欲しいというだけだったのでそういうことをするプログラムを作りました。

misohena/trayrun: Execute windows application under task tray

Visual Studioでビルドしてtrayrun.exeを作成。

trayrun.exeへのショートカットを作成して、ショートカットのプロパティから色々変更。

リンク先
c:/hogehoge/trayrun.exe /c "node.cmd start" /title "my node app"
作業フォルダー
Node.jsで書いたもののディレクトリ

みたいにすればOKです。

ショートカットをスタートアップに入れておけば起動時に開始されます。

後はタスクトレイのメニューからコンソールウィンドウを表示したり隠したり出来ます。

で、絶対同じようなものは既にあるんだろうなぁと検索したら同じ名前のものが見つかりました。まぁ、そうですよねw