首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

:怎么做一个命令行程序壳

2012-02-02 
高分求教:如何做一个命令行程序壳?我以前见过用到这种技术的软件,但是我不知道这种技术确切来说叫什么,以

高分求教:如何做一个命令行程序壳?
我以前见过用到这种技术的软件,但是我不知道这种技术确切来说叫什么,以及怎么实现。

比如说我现在有一个命令行程序a.exe,我现在要执行它。在VB里可以用shell语句执行。那么现在会跳出一个命令行窗口。
然而这样的用户界面显然是不友善的,我需要的是执行a.exe,不会出现这个窗口,同时我可以获得a.exe在命令行窗口的所有信息。
换言之,a.exe之前从键盘接受数据(input),输出数据到命令行窗口(output),而我现在希望它把我的程序当成I/O,由我的程序接管它的输入输出。

查了好久MSDN都没头绪……还请各位高手赐教。

[解决办法]
UP
[解决办法]
是不是类似这种的?

VBScript code
Option ExplicitPrivate Sub Command1_Click()    Call GetMacAddressEnd SubFunction GetMacAddress() As String    Dim i&, j&, OutChar$    Dim fn As Byte, pos1&, pos2&, ArrayChar$(1)    '输出IP信息    Shell "cmd  /c  ipconfig/all >  C:\Ping", vbHide    fn = FreeFileRETRY:    Open "c:\ping" For Binary Access Read As #fn        OutChar$ = Space$(FileLen("c:\ping"))    '读取IP信息    Get #fn, , OutChar$    Close #fn    If Len(OutChar$) = 0 Then GoTo RETRY        '搜索Physical Address    pos1 = InStr(OutChar$, "Physical Address")    Do While pos1 <> 0                '搜索:标志        pos2 = InStr(pos1, OutChar$, ":")        '取MAC Address, 长度18        ArrayChar(j) = Mid$(OutChar$, pos2 + 1, 18)        '判断是否有多个网卡        pos1 = InStr(pos2, OutChar$, "Physical Address")        If pos1 <> 0 Then j = j + 1    Loop    For i = 1 To j + 1        MsgBox "第" & i & "个网卡的MAC ADDRESS 是" & ArrayChar(i - 1)    Next    Kill "C:\Ping"End Function
[解决办法]
学习了
[解决办法]
路过,学习...............
[解决办法]
mark
有兴趣学习。
[解决办法]
关注
[解决办法]
这应该叫重定向吧,比如1.exe ,然后手工输入一些东西,最简单的在dos下,可以用

debug < 1.asm > a.com

热点排行