六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

通過DELPHI小程序在WINDOWS下更好地使用DOS批處理

[摘要]我們知道 DOS 下的批處理程序中,可以用 ECHO 顯示一段信息(提示信息或出錯信息),對于要接收用戶輸入的情況,MS-DOS 本身提供的外部程序就只有 CHOICE 能讓用戶輸入一個鍵,所以基本...
我們知道 DOS 下的批處理程序中,可以用 ECHO 顯示一段信息(提示信息或出錯信息),對于要接收用戶輸入的情況,MS-DOS 本身提供的外部程序就只有 CHOICE 能讓用戶輸入一個鍵,所以基本上只能用于菜單選擇。對于下述兩個需求,那就只有另外編程序了:
1、在 DOS 下的批處理程序中通過 WINDOWS 對話框顯示一段提示信息或出錯信息
2、在 DOS 下的批處理程序中通過 WINDOWS 對話框接收用戶輸入的一個字符串,并對其進行后續處理

對于這兩個問題,相信有些人已經有了一些解決方案。在此我提出我的解決方案,是用 DELPHI 寫的程序(這些DELPHI程序都是沒有 FORM 和.PAS文件的),我覺得比較簡單,作為拋磚引玉。

1.1 顯示提示信息 SHOWMSG.DPR
program ShowMsg;
uses Windows;
{$R *.RES}
begin
  if ParamCount < 2 then
begin
MessageBox(0, '用Windows對話框顯示信息'#13#10+
'用法: ShowMsg 提示信息 對話框標題',
'用法說明', MB_ICONINFORMATION);
Halt;
end;
MessageBox(0, PChar(ParamStr(1)), Pchar(ParamStr(2)), MB_OK);
Halt;
end.

1.2 顯示出錯信息 EmsgDlg.DPR
program EmsgDlg;
uses Windows;
{$R *.RES}
begin
if ParamCount < 2 then
begin
MessageBox(0, '用Windows對話框顯示出錯信息'#13#10+
'用法: EmsgDlg 出錯信息 對話框標題',
'用法說明', MB_ICONINFORMATION);
Halt;
end;
MessageBox(0, PChar(ParamStr(1)), PChar(ParamStr(2)), mb_IconHand);
Halt;
end.

2. INPUTBOX.DPR: 通過 WINDOWS 對話框接收用戶輸入的一個字符串,并把用戶輸入作為調用一個批處理程序或其他程序的第1個參數
program INPUTBOX;
uses Dialogs, Windows;
{$R *.RES}
var
NewString: string;
ClickedOK: Boolean;
begin
if ParamCount < 4 then
begin
MessageBox(0, '將用戶輸入作為.BAT或其他程序的參數調用'#13#10+
'用法: InputBox .BAT或其他程序文件名 缺省輸入 對話框標題 提示信息',
'InputBox用法說明', MB_ICONINFORMATION);
Halt;
end;
NewString := ParamStr(2); //default string
ClickedOK := InputQuery(ParamStr(3), ParamStr(4), NewString);
if ClickedOK then
WinExec(PChar(ParamStr(1) + ' ' + NewString), SW_SHOWNORMAL);
Halt;
end.


用法舉例:
PRT.BAT文件內容:
@ECHO OFF
D:\POS\INPUTBOX.EXE PR30.BAT "99991231" "解壓POS報表文件并用寫字板打開入帳匯總表" "請輸入日期:"

PR30.BAT文件內容:
@ECHO OFF
IF "%1"=="" GOTO END
D:
CD \POS\INBOX
IF NOT EXIST POS%1.ARJ GOTO NOT_FOUND
D:\POS\ARJ X -y POS%1.ARJ
CD D:\POS\INBOX\pos_report
IF NOT EXIST Pr30B%1.txt GOTO PR30_NOT_FOUND
C:\WINDOWS\WRITE Pr30B%1.txt
D:\POS\ShowMsg "成功!" "OK!!!"
GOTO END

:NOT_FOUND
D:\POS\EmsgDlg "文件D:\POS\INBOX\POS%1.ARJ找不到!" "出錯!"
CD D:\
GOTO END

:PR30_NOT_FOUND
D:\POS\EmsgDlg "文件D:\POS\INBOX\pos_report\Pr30B%1.txt找不到!" "出錯!"
CD D:\
GOTO END

:END

注:上述 DELPHI 程序編譯后,INPUTBOX.EXE大小是308KB,EMSGDLG.EXE 和 ShowMsg.exe大小都是 17KB,沒有比較用 VC 或 BCB 來寫的結果。但可以肯定,用 WIN32 匯編產生的 .EXE 最小,不過我沒有仔細學過 WIN32 匯編。歡迎有興趣的大俠比較一下或提出改進方法。


主站蜘蛛池模板: 五月婷婷六月丁香 | 午夜官网 | 四虎aⅴ| 日韩一级一欧美一级国产 | 天天做天天做天天综合网 | 欧美一区二区三区不卡 | 特黄特黄视频 | 日本韩国在线视频 | 四虎精品国产一区二区三区 | 四虎精品永久免费 | 日日夜夜天天久久 | 欧美性生交xxxxx久久久 | 在线国产你懂的 | 日韩黄色免费观看 | 婷婷97狠狠的狠狠的爱 | 午夜不卡影院 | 午夜免费观看视频 | 欧洲性开放大片免费观看视频 | 伊人高清视频 | 日本a在线观看 | 日本xxx在线 | 午夜三级在线观看 | 人人看人人看人做人人模 | 亚洲大香伊人蕉在人依线 | 四虎最新视频 | 在线视频污 | 在线视频福利 | 午夜综合网 | 日韩精品亚洲人成在线观看 | 天天干天天天天 | 五月婷婷 六月丁香 | 午夜视频免费观看 | 在线播放第一页 | 亚洲产国偷v产偷v自拍色戒 | 收集最新中文国产中文字幕 | 婷婷六月久久综合丁香76 | 亚洲男人的天堂久久无 | 天天综合网站 | 最近韩国日本高清免费观看 | 中国女人一级做受免费视频 | 最新69堂国产成人精品视频 |