ブラウザでダウンロード
標準入力でデータを入力できるアプリケーションに対して、
パスワード等の入力時に表示させたくない処理を想定して作成しました。
php による FTP ダウンロードのサンプルを付加しています
Framework では、日本語入力がうまくいかなかったので、VC8 でビルド
した readkey_vc.exe ( 含ソースコード ) も添付しています
Imports System.Text
Imports System.Threading
Module MyModule
' ********************************************************
' * エコー無しのキー入力
' * Backspace キーでバッファクリア
' * Enter で入力内容を標準出力
' ********************************************************
Sub Main()
Dim cki As ConsoleKeyInfo = New ConsoleKeyInfo()
Dim ret As String = ""
Do
' 押されたキーが入力ストリームに入るるまで待つ
Do While Console.KeyAvailable = False
Thread.Sleep(250)
Loop
' キーを取得( エコーしない )
cki = Console.ReadKey(True)
if cki.Key = ConsoleKey.Enter
Exit Do
end if
if cki.Key = ConsoleKey.Backspace
ret = ""
else
ret = ret & Char.ToString(cki.KeyChar)
end if
Loop
Console.WriteLine( ret )
End Sub
End Module
#include <stdio.h>
#include <tchar.h>
#include <conio.h>
#include <ctype.h>
int _tmain(int argc, _TCHAR* argv[])
{
int ch;
char buff[1024];
int p;
buff[0] = 0x00;
p = 0;
while(1) {
ch = _getch();
if ( char(ch) == 0x0d ) {
break;
}
if ( char(ch) == 0x08 ) {
buff[0] = 0x00;
p = 0;
continue;;
}
buff[p] = ch;
p++;
buff[p] = 0x00;
}
printf("%s\n", buff);
return 0;
}
@echo off
echo 以下にパスワードを入力して下さい & readkey | php.exe ftp_download.php
************************************************************
* エコー無し入力
* 入力した結果は表示されず、Enter キーを入力すると
* 標準出力へ出力します
* Back Space で入力内容をリセットできます
************************************************************
【VB.net : 日本語入力不可】
readkey.exe
【VC8 : 日本語入力可】
readkey_vc.exe
************************************************************
* 利用方法
************************************************************
入力時に表示したくないパスワード入力に使用します。
結果をリダイレクトする事によって次のアプリケーション
にパスワードを引き渡します
************************************************************
* 自分でビルドしたい場合( readkey.vb )
************************************************************
Framework3.5 でビルドする場合は、build_35.bat を実行します。
以下のファイルがあれば動作するばずです
C:\WINDOWS\Microsoft.NET\Framework\v3.5\vbc.exe
Framework2.0 でビルドする場合は、build_2.bat を実行します。
以下のファイルがあれば動作するばずです
■ 同梱している httpdownload.exe は、2.0 でビルドしています
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\vbc.exe
************************************************************
* ソースコード
************************************************************
■ readkey.vb
■ readkey_vc.cpp
************************************************************
* PHP を使ったサンプル
************************************************************
■ ftp_download.php
■ run.bat
************************************************************
* その他
************************************************************
■ 著作権その他
このプログラムはフリーです。どうぞ自由に御使用ください。
著作権は作者である私(lightbox)が保有しています。
また、本ソフトを運用した結果については、作者は一切責任を
負えせんのでご了承ください。
VB.net 関連の記事