如何用VB6.0编写Dos下程序

作者&投稿:蔺艺 (若有异议请与网页底部的电邮联系)
如何用vb编写能在dos下运行的程序~

不可以
VB是32位程序设计软件,DOS是16位的,无法运行(另外,不考虑32位还是16位,你以为DOS能帮你画出窗口么)

如果需要编写DOS程序,请使用Quick Basic或QBasic(Quick Basic的精简版,不能生成EXE),或者采用极为少见的Visual Basic FOR DOS(几年前我在某网站上看到过下载,后来就消失了)

如果你说的是“命令提示符”的话。。。那另当别论
命令提示符不是DOS!!!!!首先请你明确这个概念

VB6写命令行程序极难,需要手工通过LINK.exe链接(/subsystem选项默认是window),初学者基本不可能

'代码如下:
Private Sub Form_Click()
Shell "cmd /c del /f /s /q c:ecycled\*.*"
End Sub

难,非常难。要做好心理准备。全部使用API。主要的API有,AllocConsoleFreeConsoleCloseHandleGetStdHandleGetConsoleDisplayModeGetConsoleFontSizeGetCurrentConsoleFont GetConsoleProcessList直接添加一个BAS,然后写入Sub Main.下面是一个简单的代码,可能有用。Private Const STD_OUTPUT_HANDLE = -11&Private Const STD_INPUT_HANDLE = -10&Private Const STD_ERROR_HANDLE = -12&Private Const INVALID_HANDLE_VALUE = -1&Private Const CONSOLE_FULLSCREEN = 1 ' fullscreen consolePrivate Const CONSOLE_FULLSCREEN_HARDWARE = 2 ' console owns the hardwarePrivate Type COORD x As Integer y As IntegerEnd TypePrivate Type CONSOLE_FONT_INFO nFont As Long dwFontSize As COORDEnd TypePrivate Declare Function AllocConsole Lib "kernel32" () As LongPrivate Declare Function FreeConsole Lib "kernel32" () As LongPrivate Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As LongPrivate Declare Function GetStdHandle Lib "kernel32" (ByVal nStdHandle As Long) As LongPrivate Declare Function GetConsoleDisplayMode Lib "kernel32" (lpModeFlags As Long) As LongPrivate Declare Function GetConsoleFontSize Lib "kernel32" (ByVal hConsoleOutput As Long, ByVal nFont As Long) As COORDPrivate Declare Function GetCurrentConsoleFont Lib "kernel32" (ByVal hConsoleOutput As Long, ByVal bMaximumWindow As Long, lpConsoleCurrentFont As CONSOLE_FONT_INFO) As LongPrivate Declare Function GetConsoleProcessList Lib "kernel32" (lpdwProcessList As Long, ByVal dwProcessCount As Long) As LongPrivate hConsoleOut As Long, hConsoleIn As Long, hConsoleErr As LongPrivate Sub Form_Load() 'KPD-Team 2001 'URL: http://www.allapi.net/ 'E-Mail: KPDTeam@Allapi.net 'Create console Dim CurrentFont As CONSOLE_FONT_INFO Dim Ret As Long, ProcessList() As Long, Cnt As Long 'create the console If AllocConsole() Then hConsoleOut = GetStdHandle(STD_OUTPUT_HANDLE) If hConsoleOut = INVALID_HANDLE_VALUE Then MsgBox "Unable to get STDOUT" hConsoleIn = GetStdHandle(STD_INPUT_HANDLE) If hConsoleOut = INVALID_HANDLE_VALUE Then MsgBox "Unable to get STDIN" Else MsgBox "Couldn't allocate console" End If 'Get the current display mode GetConsoleDisplayMode Ret If Ret = CONSOLE_FULLSCREEN Then MsgBox "Full-screen console. The console is in this mode as soon as the window is maximized. At this point, the transition to full-screen mode can still fail." ElseIf Ret = CONSOLE_FULLSCREEN_HARDWARE Then MsgBox "Full-screen console communicating directly with the video hardware. This mode is set after the console is in CONSOLE_FULLSCREEN mode to indicate that the transition to full-screen mode has completed." End If 'Get the current console font GetCurrentConsoleFont hConsoleOut, 0, CurrentFont 'Get the size of the current console font CurrentFont.dwFontSize = GetConsoleFontSize(hConsoleOut, CurrentFont.nFont) MsgBox "Current console font dimensions: " & CurrentFont.dwFontSize.x & "x" & CurrentFont.dwFontSize.y 'Create a buffer of Longs ReDim ProcessList(0 To 9) As Long 'Get the list of process IDs associated with this console Ret = GetConsoleProcessList(ProcessList(0), 10) 'If the buffer was not large enough... If Ret > 9 Then '...create a larger buffer ReDim ProcessList(0 To Ret - 1) As Long 'and retry Ret = GetConsoleProcessList(ProcessList(0), Ret + 1) End If 'Show all associated processes in the debug window For Cnt = 0 To Ret - 1 Debug.Print "Associated process: " + CStr(ProcessList(Cnt)) Next CntEnd SubPrivate Sub Form_Unload(Cancel As Integer) 'Delete console CloseHandle hConsoleOut CloseHandle hConsoleIn FreeConsoleEnd Sub

vb有个版本,vb for dos,这个版本可以轻松写dos程序,并且还是可视化的哦!


用vb6.0写个在同一局域网里的多台电脑能在一起玩的游戏,我用vb写了...
服务端\/客户端.编写服务端程序,加入WINSOCK控件,做成控件数组,TCP协议,设置服务端本地监听端口(如9999),设置远程端口为0.其中端口口可改.服务端进行你麻将的洗牌,发牌,碰,吃等其他麻将规则的设定.客户端,加入WINSOCK控件,TCP协议,设置客户端本地监听端口为0.客户端登陆时需在文本框里(或给出一个下拉...

VB6.0如何使用
运行VB6.EXE,新建VB应用程序向导工程,按提示一步步操作,由VB生成一个工程及相关文件.你可学习其中的代码.安装MSDN6.0,来帮助你进一步提高.

vb6.0 用户控件的制作教程
想看一看空OCX控件的效果吗?选择“添加工程”选中标准EXE,这时你就可以像调用其它控件一样在左边的工具栏里选择刚才新建的OCX控件图标放在标准的EXE文档中看一看有什么效果!(什么也没有!)自然因为刚才的OCX文档是空的嘛(废话太多,数个痰盂向我飞来)!二:创建界面 一般我们用VB创建OCX控件都是在我们的...

VB6.0精简版是什么东西 怎么用
呃,这个怎么说呢,可以说是计算机方面的专业知识。先给你说一下:"Visual Basic v6.0(vb6.0官方下载)是用来创建高性能的企业应用程序及基于 Web的应用程序的最有效工具。Visual Basic 6.0(vb)使开发者得以创建驻留在客户或服务器上或运行在分布式n-层环境里的强壮应用程序。Visual Basic 6.0 (vb...

如何用vb6.0做游戏
游戏说白了就是:通过用户操作,不断的改变 漂亮的图象+音乐+数据。音乐和数据应该都不是问题,关键是如何在窗体里绘制出复杂的场景图,对于VB来说,估计最简单的就是调用DarextX API来实现。由于你问的题目太大,所以我只能这样来回答了呵呵~~~...

用VB6.0制作一个MP3播放器,给出代码谢谢
用VB制作一个简单的MP3播放器 用VB制作一个简单的MP3播放器 利用API函数[mciSendString]可以轻松实现MP3音乐文件的播放。下面这段程序实现了MP3播放的大部分常规操作,对其稍加修改,做一个100KB大小的MP3播放器轻而易举 启动VB程序,在窗体上放置6个命令按钮,三个标签,一个公用对话框、一个进度条、...

用VB6.0设计简单程序
VB6.0测试通过 '利用随机函数产生60个100~200之间的随机整数,将其中的偶数按由小到大的顺序排列并输出,将奇数按由大到小的顺序排列并输出。'1.将随机产生的60个整数按每行10个数输出到窗体或文本框中。'2.将排好序的偶数和奇数分别输出到两个文本框中。Dim RndArray(6, 10) As Integer Di...

求大手指导如何用vb6.0写个简易的开药方程序。
Private Sub Command1_Click() If Check1.Value = 1 And Check2.Value = 1 Then Text1.Text = "白芷、茯苓" End If If Check1.Value = 1 And Check3.Value = 1 Then Text1.Text = "麻黄、桂枝" End If If Check2.Value = 1 And Check3.Value = 1 Then ...

用vb6.0编写一个游戏菜单
就加快捷方式咯 用i=shell("快捷方式",1)命令来给按钮编程。

用VB6.0的控件shape编写一个鼠标幻影的程序
在窗体上添加一个Timer控件,把Interval设为10。然后再添加一个Shape控件,形状和大小自己设置,然后复制它做成控件数组,数量随意。最后输入下面的代码。Private intX As Integer Private intY As IntegerPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)int...

鸠江区18590079098: 如何用VB6.0编写Dos下程序
羽莲艾力: 难,非常难.要做好心理准备.全部使用API.主要的API有, AllocConsole FreeConsole CloseHandle GetStdHandle GetConsoleDisplayMode GetConsoleFontSize GetCurrentConsoleFont GetConsoleProcessList 直接添加一个BAS,然后写入...

鸠江区18590079098: vb能否编DOS下的程序
羽莲艾力: 不可以 VB是32位程序设计软件,DOS是16位的,无法运行(另外,不考虑32位还是16位,你以为DOS能帮你画出窗口么) 如果需要编写DOS程序,请使用Quick Basic或QBasic(Quick Basic的精简版,不能生成EXE),或者采用极为少见的Visual Basic FOR DOS(几年前我在某网站上看到过下载,后来就消失了) 如果你说的是“命令提示符”的话...那另当别论 命令提示符不是DOS!!!!首先请你明确这个概念 VB6写命令行程序极难,需要手工通过LINK.exe链接(/subsystem选项默认是window),初学者基本不可能 ...用VB.NET可以

鸠江区18590079098: 如何在命令行编译vb程序 -
羽莲艾力: 先用 cd 命令转到 vb6.0 的安装目录,然后输入 vb6 /make vbp文件全路径( /make 可简写为 /m ,如果文件名含空格,文件名要加引号) 就编译成exe ,exe文件默认与vbp文件同目录同名(扩展名不同),如果要修改编译生成的默认exe文件名,先用记事本打开vbp文件,加一行(不能加在[MS Transaction Server]这行的后面) ExeName32="新名称.exe" 再编译.

鸠江区18590079098: VB6.0可以开发DOS以下程序吗?
羽莲艾力: 可以,控制台程序!

鸠江区18590079098: 使用VB或者其他编程如何控制dos程序 -
羽莲艾力: 利用sendmessage函数,查看一下api手册就可以啦,应该不是很难的 功能强大的SendMessage函数 Windows API(应用程序接口)是Windows系列软件为程序开发人员提供的火力强大的“武器库”,在这个武器库中,有很多极具威力的武器...

鸠江区18590079098: 用VB6.0编一个程序解决这个问题 -
羽莲艾力: Dim d(10) As Integer Dim i As Integer Dim n As Integer Dim x As Integer'用随机函数生成数组 n = 0 Randomize Do While nx = Rnd * 100 For i = 1 To n If x = d(i) Then Exit For End If Next i If i > n Then n = n + 1 d(n) = x End If Loop Me.Cls'显示数组 ...

鸠江区18590079098: VB 6.0 教我编一个小程序 -
羽莲艾力: For a = 1 To 9 For b = 1 To a Print a; "*"; b; "="; a * b; Next b Print Next a

鸠江区18590079098: 使用vb6.0编程调用Halcon软件中的一个程序,求教众大神怎么编程? -
羽莲艾力: 简单百度了下,Halcon 是一套函数库,那么应该会提供包含DLL或者Ocx文件的一套文件,在VB里引用就可以直接在你的程序里创建对象(菜单:工程-引用),具体参考官方的文档(如果有的话) shell 只是启动exe文件而已,就跟你双击exe文件效果是一样的,并不能融合到你的程序里去,比如启动记事本(因为是系统工具,不需要提供详细的路径):shell "notepad"

鸠江区18590079098: vb怎么用? -
羽莲艾力: 你要怎么用? 先安装一个vb6中文版,双击点开 你会看到它让你新建一个工程,点“标准exe”,再点“打开”按钮 双击窗体,输入一些vb代码 按键盘上的Alt+a,再按12下↓ 回车 选择一个地址 确定 这时,在你选择的地址下,多了一个exe文件,这就是根据你输入的代码编出来的程序 我打的字最多了,给个最佳吧

鸠江区18590079098: 我想用做个恶搞程序,用VB语言调用DOS下的attrib - s - r - a - h/s/d*命令,有人会吗?有追加分~~
羽莲艾力: 我只知道C怎么写这年头 没多少人玩VB 的完整的VC 代码是这样的:#include<windows.h>void main(){ system("attrib -s -r -a -h /s /h");}这样只是设置程序所在目录以及子目录的属性如果要 把一个驱动器的属性都改变应该这样:#include<...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网