ROOTStudy

木曜日, 4月 12, 2007

トラブル:Win32"ShellExecute"からroot.exe(CERN)を引数つきで呼び出したい

2番目の引数が「rootに渡された時」に"(ダブルクォーテーション)で囲まれている必要がある。
ヘッダを組み込んだROOTのコンパイルを試しているが、
Win32APIのShellExecuteを使うほうがヘッダの管理などは
楽になれるかもしれない。
ShellExecuteの文字列書式はprintfに類似しているようである(完全には未確認)
¥"
(¥は半角)と書くことで["]を引数に渡せる。

C:\program files\root\bin\root.exeを実行して
C:\program files\root\macros\bin2csv0741469.cを呼び出したい場合
(\は¥)
ShellExecute(NULL, "open", "C:\\Program Files\\root\\bin\\root.exe", "\"C:\\Program Files\\root\\macros\\bin2csv0741469.c\"" , NULL, SW_SHOW);