说一下,shell是运行cmd命令的,也就是运行里面能执行的命令,不是vb命令
要运行vb命令,实际上是运行vbs命令,而不是vb命令,因为vb是有界面系统的。
这可以用引用一个可以操作vbs的对象实现
这里说一个简单点的,调用api,代码如下:
Private Declare Function EbExecuteLine Lib"vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As Long
‘先声明api
Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
End Function
’写一个操作函数,调用:ExecuteLine(命令文本);返回为false则表示执行错误
Private Sub Command1_Click()
‘这里可以按你的程序改
Dim dm() As String
Dim i As Long
dm = Split(Text1, vbCrLf)
For i = 0 To UBound(dm)
If Len(dm(i)) <> 0 Then
Dim Result As Boolean
Result = ExecuteLine(dm(i))
If Result = False Then Debug.Print i + 1 & vbTab & "行执行错误"
Else
Debug.Print i + 1 & vbTab & "行代码错误"
End If
Next
End Sub
‘贰’ 请教一下VB程序设计的基本命令
关于VB语言和怎样学习VB
VB6.0全称为VisualBasic 6.0,是微软公司推出的可视化编程工具MSDN之一,是目前世界上使用最广泛的程序开发工具。如果你是一个对编程一无所知,而又迫切希望掌握一种快捷实用的编程语言的初学者,那选择VB 6.0没错的。即使考虑到VB程序本身编译和运行效率较低的不足(嘻嘻速度现在不是问题吧),单是它的快捷的开发速度,简单易学的语法,体贴便利的开发环境,它仍不失一款优秀的编程工具,是初学者的首选。
也许你会问,我以前没学过任何一种语言,我能快速上手吗?别担心,没问题VB的语法的和QBASIB语言是基本相同的,也就是说它的语法是最容易被初学者所接受的。另外VB提供的是可视化的开发环境,我们可以象搭积木一样构建出程序的界面,而且VB提供了丰富的控件组,省去了我们自己写代码实现这些效果的麻烦,这样我们就能把更多的精力放在程序功能的实现上,所以VB学起来简单,用起来方便。
接着看看VB语言的前景,在目前各种编程语言共存的时代,VB会不会落伍呢?当然不会了,在我写这篇文章的同时,微软已经透露了VB7.0将完全面向对象的消息,可以肯定下一代VB的功能一定会强大很多,我们这些所谓的 VB 程序员总算可以放心了,VB不会落后于时代,毕竟它是使用人数最多的优秀的开发工具。
好了,侃了这么多关于VB的台前幕后,总之是为想学编程的你树立信心,编程一点都不难,只要你决定了开始,就让我们一起踏上愉快的编程之旅吧。
接下来谈谈怎样学习VB,先说说“看实例学VB6.0”系列教程,它是面向编程初学者的VB入门教程,这个教程的特点是抛开晦涩难懂的概念和语法,不做内容上的堆积和罗列,而是采用了每节一个生动有趣的小例子的形式,每个小例子中会涉及到一个或几个VB编程的知识点(可能是控件,也许会是某个函数或编程小技巧),使你快速入门。希望你学完此教程后能达到下述的效果:
从对编程一窍不通或从未接触过编程的状态,通过学习能够对VB6.0的编程环境比较熟悉,掌握VB开发界面的使用方法;对VB语言的基本语法大致了解,知道常见的语句的意义;学习VB常用控件的使用方法,并能将它们灵活运用到应用程序中;能开发简单的VB程序。到那时你已经能够继续深入的学习VB编程,可以继续参与到程序设计栏目其他版块的学习中去,嘻嘻,目标就是这样啦。
然后谈谈学习编程的方法,万事开头难,刚刚开始,遇到些困难没关系,慢慢来。编程是一个不断学习,不断积累的过程,编程的乐趣也正是存在于学习的过程中。我们每学一点,就赶快把它用到实际的程序中去,自己多学多用多实践,水平才能不断提高,这就是“学以致用”。
另外,编程涉及到很多的知识,象操作系统的、软件工程的、硬件系统的以及编程思想等各个方面,这就需要我们多看看这方面的资料,扩充自己的知识面。
还有如果学习过程中遇到了什么问题,或者有什么好的心得,你可以到洪恩的“网上交流”的“编程技术”版去提问求助或是发表文章,那里有许多编程高手可以为你答疑,还有许多同样的初学者一起交流。
“求知无限”是网上学习的特点,如果你觉得自己能够更深的学习VB或是其他编程的知识时,“程序设计”栏目的其他版块将是理想的去处,希望我们能在这样的学习环境中不断进步。
‘叁’ VB用的基本语句有哪些
VB程序中的一行代码称为一条程序语句,简称为语句。语句是构成程序的基本单位,是执行具体操作的指令,每条语句以ENTER键结束。基本语句有:
1、 注释语句
注释不仅仅是对程序的解释,有时它对于程序的调试也非常有用,譬如说可以利用注释屏蔽一条语句以观察变化,发现问题和错误。注释语句是我们在编程里最经常用到的语句之一。
在VB里,注释语句有两种,一种是用“Rem”关键字,这跟DOS里的批处理文件的用法一样,还有一种是利用单引号“'”,例如:‘Dim a As String与Rem Dim a As String的作用是一致的。
2、长语句的分行
在比较早的版本中,因为没有象C等语言用“;”隔开语句与语句,VB的语句是必须写在一行里的,不过在VB之后的版本里可以用分行符“_”把一个长语句分成若干行来存放。
3、条件语句
VB的条件语句更符合英语的语法,如果Then后面所跟的语句只有一条,可以写成:
条件1
True/False
语句1
条件2
True/False
语句2
条件3
True/False
…
…
…
条件N
True/False
语句N
4、循环语句
循环结构是计算机语言里一种重要的结构,它的应用广泛,最简单的例子是累加器的作用,还可以用于穷举法,更直观的例子是把某件事重复指定的次数,这样就不用把要重复的语句输入多次,而通过循环结构完成,非常方便。
C语言里有一个“for”循环语句,VB里也有“For”关键字,作用也差不多,只是VB的“For”语句更容易理解。它的格式是:
For<循环变量>=<初赋值>To<终值>[Step<步长>]
Next<循环变量>
在默认情况下,Step被设为“1”,可以省略,Step也可以设为负值,例如:
Dim a=0
For I=1 To10
a=a+ I
Next I
5、While语句
While后面都跟逻辑条件判断,“Do While……Loop语句”和“While……Wend语句”作用相似,都是先判断While后面的条件是否为“真”,如果为“真”则执行里面的语句,如果为“假”,则退出循环,循环直至条件为“假”终止。
“Do……Loop While”与前两者的区别在于,它不管条件的真假,都会先执行“Do”后面的语句,也就是说,它至少执行语句一次。
6、Until语句,它是直至条件为真则终止循环,句式把While上述三个语句的While换成Until即可,但是因为容易记混,所以我建议只用While即可。Until<条件>可以相当于While Not<条件>。
For循环和Whlie循环应当根据适当的环境使用,它们有时也可替换。
‘肆’ vb 命令大全
VB 可用指令、函数
A
Abs 求绝对值 ActiveControl 得到焦点的对象
ActiveForm 得到焦点的表单 Array 指定数组
App 得知程序信息 AppActivate 激活执行中的应用程序
Asc 求字符的内码 AscB 求字符的ASCII
AscW 求字符的UniCode Atn 求Tan-1
B
Beep 发出预设的警示声
C
Call 调用子程序 Calendar 选择月历
Choose 取出一列值的某个值 CBool 数值转成布尔数
CByte 数值转成位元格式 CCur 数值转成货币格式
CDate 数据转成时间 CDbl 数值转成双精度浮点数
CDec 数据转成十进数 ChDir 改变目前路径缓充的路径
ChDrive 改变目前磁盘缓充的磁盘 Chr 由内码求得一字符
ChrB 由ASCII求得一字符 ChrW 由UniCode求得一字符
CInt 数据转成Integer CLng 数据转成Long
Command 读出程序的参数 Const 定义常数
Cos COS CSng 数值转成单精度浮点数
CurDir 得知目前路径缓充的路径 CVar 数值转成可变变量
D
Date 得到目前电脑的时间 Date$ 得到目前电脑时间字符串
DateAdd 日期加法得日期 DateDiff 日期相减得数值
DatePart 日期部份资讯 DateSerial 字符串转日期
DateValue 数字转日期 Day 得知日期变量内是几号
DDB 折旧的计算 DeleteSetting 删除系统登录内的数据
Dir 得知目前路径内的文件名 DoEvents 闲置函数
E
End 结束程序 Environ 取得环境变量的数据
EOF 某个文件缓冲的指标是否到档尾 Erase 重新初始化数组
Err 错误资讯 Error 错误代码信息
Exp 得到自然对数
F
Fix 去除小数 FileCopy To 复制文件
FileAttr 文件开启模式 FileDateTime 文件存档日期
FileLen 文件长度 Filter 筛选数组
Format 数据格式化输出 FreeFile 空的文件编号
FV 求得定期、定额支付且固定利率下之年金的值
G
GetAllSetting 得到所有系统登录的资讯 GetAttr 得知文件属性
GetSetting 得到系统登录的资讯
H
Hex 将数值转成16进数表示的字符串 Hour 得知日期变量内是几时
I
If . Then . Else 判断结构 IMEStatus 得知IME输入法状态
InStr 寻找字符串里的字符串 InStrB 寻找字符串里的ASCII
IntStrRev 由字符串右边开始寻找字符串里的字符串
Int 取整数
J
Join 将数组数据加入分隔字符后组合成一新字符串
K
Kill 删除文件
L
LBound 得知数组最小起始范围 LCase 字符串转小写
Left 截取字符串左边几个字 Len 得知字符串的字数
LenB 得知变量占用记忆体几个Byte LoadPicture 载入图形
Log 求对数值 LSet 字符串向左对齐
LTrim 移除字符串最左边的空白字符
M
Mid 截取字符串里某些字符串 Minute 得知日期变量内是几分
MkDir 建立新的数据颊 Month 得知日期变量内是第几月
N
Name As 更改文件名 Now 得知目前点脑的日期与时间
O Oct 字符转成八进制的字符串 Option VB内部一些选项设定
P
PopupMenu 跳出菜单 Print 打印数据
Q
QBColor 设定颜色(16色)
R
Randomize 随机数初始化声明 Replace 取代字符串中某些字符串 VB6提供
RGB 设定颜色(255*255*255色) RmDir 移除数据颊
Rnd 得到一个随机数 RSet 字符串向右对齐
RTrim 去除字符串最右边的空白字符
S
SavePicture 储存图形 Screen 得知屏幕简易资讯
Second 得知日期变量内是几秒 SetAttr 设定文件属性
Sgn 得知是整数还是负数v Shell 执行外部程序
Sin 得知Sin Space 填入数个空白字符
Split 以某字符串将字符串拆解成数组 VB6提供
Sqr 求平方根
Str 数值转字符串 StrComp 比较字符串
StrConv 改变字符串型态 String 设定一个重覆的字符串
StrReverse 字符串反转 VB6提供
T
Tab 打印n个制表符 Tan 得知Tan
Time 得知、设定电脑时间 Time$ 得知、设定时间字符串
Timer 得知今天电脑总秒数 TimeSerial 字符串转时间
TimeValue 数字转时间 Trim 去除字符串首尾的空白字符
TypeName 得知变量类别的名称
U
UBound 得知数组的最值 UCase 字符串转大写
V
Val 将字符串转成数字 VarType 得知变量的类型
W
WeekDay 得知日期变量内是星期几 WeekdayName 将WeekDay传回值改成文字显示
Y
Year 得知日期变量内是几年
‘伍’ VB编程按钮命令代码
Shell "some url", vbNormalFocus
‘陆’ 急求VB程序代码
Private Sub Command1_Click()
Dim a(10) As Integer
Randomize
Max = -1
Min = 100
For i = 1 To 10
a(i) = Int(Rnd * 90) + 10
Print a(i);
s = s + a(i)
If a(i) > Max Then Max = a(i)
If a(i) < Min Then Min = a(i)
Next i
Print "最大值="; Max
Print "最小值="; Min
Print "平均值="; s / 10
End Sub
‘柒’ vb编程时要打开应用程序需要什么命令
需要改注册表呀
hkey_classse_root\txtfile\shell\open\command
下的默认改成
你的程序路径(exe)空格
%1
这样当打开的时候就会启动你的程序,而且command就是这个文件的路径
第二个command是vb里面的一个属性,是运行程序的命令行,你说你试过选择打开方式,还是不行,就是没有用到这个命令行,这个命令行得到的是文件的路径,还需要你自己处理才能打开
‘捌’ VB里运行程序的命令是什么
shell("c:\123.exe")
‘玖’ vb6.0简单的编程
Private Sub Form_Load()
Timer1.Interval = 100
Timer1.Enabled = False
Command1.Caption = "开始"
End Sub
Private Sub Command1_Click()
If Timer1.Enabled = False Then
Timer1.Enabled = True
Command1.Caption = "暂停"
Else
Timer1.Enabled = False
Command1.Caption = "继续"
End If
Private Sub Timer1_Timer()
Label1.Left = Label1.Left - 100
If Label1.Left <= 0 Then
Label1.Left = Form1.Width
End If
End Sub
这样更有条理些
‘拾’ VB编程水仙花数
VB实现水仙花数的程序代码如下:
PrivateSubCommand_Click()
Fornum=100To999
a=numMod10
b=num10Mod10
c=num100
Ifa^3+b^3+c^3=numThenPrintnum
Nextnum
EndSub
实现具体步骤如下:
1.启动VB程序,新建一个标准的exe项目,如下图。
(10)vb编程命令扩展阅读:
C语言实现水仙花数的代码:
#include<stdio.h>
#include<stdlib.h>
voidmain()
{
inti,j,k,n;
printf("'waterflower'numberis:");
for(n=100;n<1000;n++)
{
i=n/100;/*分解出百位*/
j=n/10%10;/*分解出十位*/
k=n%10;/*分解出个位*/
if(n==i*i*i+j*j*j+k*k*k)
{
printf("%-5d",n);
}
}
printf(" ");
}
注意事项:
VB编程的核心思想是组件编程。VB是最早引入组件编程的概念,然后被其他语言采用并成为标准,如vc++、Delphi、PowerBuilder等都采用了组件编程模型,并利用面向对象的编程技术,成为当今程序设计的发展方向之一。
VB编程,由于采用了组件技术,所以不必从底层开始窗体,控制设计,可以由工厂通过各种零件装配生产机器,通过Microsoft或第三方提供的组件,装配成所需的程序。与什么?VB是代码,它像胶水一样,把有限的代码和组件粘合在一起。结果是一个完整的应用程序。
VB有一个图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以很容易地使用s、RDO、ADO连接到数据库,或者很容易地创建活动的X控件,从而高效地生成类型安全的和面向对象的应用程序。
程序员可以使用VB提供的组件轻松快速地构建应用程序。VB的组件既可以拥有用户界面,也可以没有。这样一来服务器端程序就可以处理增加的模块。
VB使用参数计算的方法来进行垃圾收集,这个方法中包含有大量的对象,提供基本的面向对象支持。因为越来越多组件的出现,程序员可以选用自己需要的扩展库。