首页 > 开发 > 综合 > 正文

VB应用之DOS程序窗口化

2024-07-21 02:20:32
字体:
来源:转载
供稿:网友
 

对偶来说,所有可视化编程工具中,vb应该是最简单,最快捷,最方便的,偶曾经用它做过应用程序,编过游戏,开发了小外挂之类的,感觉用vb功能虽然弱了点,但是通过api的确可以非常方便的完成许多工作,今天把自己做dos控制台程序改编成窗口应用程序的一些经验与方法写下:

1) dos控制台窗口化最简单的方法就是用shell函数了,在msdn中是这么说的:

语法: shell (pathname [,windowstyle] ),执行一个可执行文件,返回一个 variant (double),如果成功的话,代表这个程序的任务 id,若不成功,则会返回 0。

只需要一个可执行文件的路径与运行时窗口状态就行了,比如给net send命令做一个窗口化程序,则可以新建一个窗体,再放置两个text控件和一个command按钮,其中text1表示填写ip地址,text2填写要发送的消息,最后再在command的click事件中这样调用:

dim rtn as variant
rtn = shell("net send" & " " & text1.text & " " & text2.text, 0) '参数0表示隐藏dos窗口

到这里,一个net send的窗口版就大功告成了,大家只要对界面稍微美化一下就ok啦~~~

2) 调用api函数

这种方式应该说是最完美的,毕竟是操作系统提供的函数嘛~这里要用api函数,所以要定要声明,我们就在通用里将它声明一下:private declare function winexec lib "kernel32" (byval lpcmdline as string, byval ncmdshow as long) as long

接下来跟前面的差不多,只是在command控件的click事件里这么调用:

dim cmd as string
dim hwnd as integer
cmd = "net send" & " " & text1.text & " " & text2.text
hwnd = winexec(cmd, 0)

这样,就能完成对net send命令的调用了,非常方便,偶这样子做过好几个dos控制台程序的窗口化版本了

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表