サンプル


注意:このページのリンクはCmdHttpd経由でアクセスしていない場合には動作しません


閲覧の例


閲覧する単純な例としては, ワークスペース内の test.txt をみるために, 相対パスで /view/test.txt, 絶対パスでの c:/boot.ini をみるために /view/c:/boot.ini のようにします.

単純な実行の例[標準入出力タイプ]


実行する単純な例としては ipconfig.exe を実行するために /exec/ipconfig, つぎに ipconfig /all を実行するために, /exec/ipconfig?/all です. ただし,dir のような実行ファイルではないものは /exec/dirとしても実行できません. この場合には,バッチファイルを使うか, cmd.exe /c を使って /exec/cmd?/c%20dir%20c: としてください.(%20は空白)

単純な実行の例[GUIタイプ/ユーザーに非表示]


プログラムをキックしたい場合として,shutdown.exe を実行したいのなら, /kick/shutdown.exe としてください.(注意: 本当にシャットダウンします)

単純な実行の例[GUIタイプ]


単純な例としてユーザーにいじられても無害なGUIプログラムの cdmesg.exe をユーザーの作業している画面で実行するには, /guikick/cdmesg.exe, ログイン画面で実行するには, /notify/cdmesg.exeと 実行します. 前者の動作を確認するには cmdhttpd.exe が動いている端末に 誰かがログインする必要があります. 後者の動作を確認するには,ログイン前のログイン画面にするか, Ctrl-Alt-Delを押した画面かロックしてる画面にする必要があります.
/guikick/cdmesg.exe?%22the_title%22%20%22message_contents%22 というように引数をつけて実行もてきます.

バッチファイルの実行の例[標準入出力タイプ]


GET で /exec/sample.cmd?printenv.plにアクセスすると, ワークスペース内にある sample.cmd の実行結果が得られます. ただし,IE の処理の関係で,Content-Type が text/plain なのに ファイルをダウンロードしたように見えるかもしれませんが, その際にはいったん保存して,notepad 等で開いて確認してください.
CMD> sample.cmd printenv.pl
と同様に結果が得られています. ソースをみたければ,exec/ を view/ にかえて, /view/sample.cmdにアクセスしてください.

perlスクリプトの実行の例 [標準入出力タイプ]


自作スクリプトを書くこともできます.
たとえば,標準入力の内容と環境変数を 返すperlスクリプトとして
#!/usr/local/bin/perl
while(){
	print "(STDOUT)";
	print $_;
	last if($_ eq "");
}

foreach $i (keys %ENV){
	print STDERR "(STDERR) ENV: $i:$ENV{$i}\n";
}
exit;
のようなコマンドが可能です. GET で /exec/perl.exe?printenv.pl とアクセスする場合と, 以下のように POST でアクセスする場合を比べてみてください.
/exec/perl.exe?printenv.pl にPOST でアクセス
/exec/perl.exe?printenv.pl にPOST でアクセス(enctype=multipart/form-data)
ただし,perl がインストールされていないと動きません. また,IE などでは Content-Type よりも拡張子で ファイルタイプを判断するようなので, 説明のために dummy.txt を URL に含めています. なお,
URLの説明のように perl スクリプトなので, /perl/printenv と指定しても動きます.

アップロードの例


アップロードは次のように upload/upload.txt に POST することで 行います.
確認は,
/view/upload.txtにアクセスしてください.

危険な例


GUIタイプとしてもコマンドラインプログラムは実行できますが, /guikick/perl.exe?wait30sec.plにアクセスすると, コマンドラインのウィンドウがユーザーのデスクトップに出てきます. このウィンドウはサービスの権限なので操作されると危険です. (wait30sec.pl は30秒待って終了するプログラムです)
実行結果が不要で標準入力が必要ない, もしくは常駐させたいコマンドラインプログラムを キックするときに利用したいときには,ユーザーの目に触れないように /kick/perl.exe?wait30sec.plとしてアクセスした方が安全です.