| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 877 人关注过本帖
标题:[求助]如何让vb加入命令行方式?
只看楼主 加入收藏
yigol
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-7-16
收藏
 问题点数:0 回复次数:3 
[求助]如何让vb加入命令行方式?
如何让vb加入命令行方式?


例:用vb生成一个123.exe 在程序里写入命令行方式假设命令为S为某一特定功能得出: 123.exe /s
搜索更多相关主题的帖子: 命令 
2007-09-16 09:11
slore
Rank: 5Rank: 5
等 级:贵宾
威 望:16
帖 子:1108
专家分:0
注 册:2005-7-1
收藏
得分:0 
command

快上课了……
2007-09-16 09:11
yigol
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-7-16
收藏
得分:0 
谢谢版主,有可能我是没有说清楚,我想实现的就是在vb程序中实现该程序的某一特定功能,这个特定功能用参数的形式来表示

例如:像winrar的安装包有个参数是S表示静默安装
2007-09-16 10:06
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 

2楼的意思是
[CODE]Dim cmdParas As String
cmdParas=Command()[/CODE]
如果还不够强大(那不晓得你要做什么了),就用下面这个
[CODE]Option Explicit
' mFunctions.bas
' Written by multiple1902
' 2007.5.8
' Last Edited By multiple1902
' 2007.6.5
' QQ 395273243
' Live multiple1902@hotmail.com
' Mail multiple001@gmail.com

Public Declare Function GetCommandLine Lib "kernel32" Alias "GetCommandLineA" () As Long
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (ByVal Destination As String, ByVal Source As Long, ByVal Length As Long)
Function sGetCommandLine() As String
' 获取本程序启动完整命令行
' 拓扑关系: 被 FUNC sGetAppExePathName()和 FUNC bArgExists() 依赖
Dim lRet As Long, sCmd As String
lRet = GetCommandLine
If lRet > 0 Then
sCmd = String(256, 32)
CopyMemory sCmd, lRet, Len(sCmd)
sCmd = Mid(sCmd, 1, InStr(1, sCmd, Chr(0)) - 1)
End If
sGetCommandLine = sCmd

' 关于API GetCommandLine() 的使用说明
' MSDN:
' The return value is a pointer to the command-line string for the current process.
' 返回字符串指针(指向当前命令行缓冲区的一个指针),并非字符串,API Viewer的声明是错误的。
' References:
' http://topic.csdn.net/t/20020410/17/636954.html

End Function
Function sGetAppExePathName() As String
' 得到应用程序完整路径
' 拓扑关系:依赖于 sGetCommandLine()
Dim sBufCmd As String, sResponse As String
sBufCmd = sGetCommandLine()
' 若完整命令行以半角双引号开始
If """" = Left(sBufCmd, 1) Then
Dim iPosPairQuot As Integer
iPosPairQuot = InStr(2, sBufCmd, """")
sResponse = Mid(sBufCmd, 2, iPosPairQuot - 2)
Else
' 若不存在半角双引号则路径中不包含空格,无需考虑空格的情形
Dim iPosSpace As Integer
iPosSpace = InStr(2, sBufCmd, " ")
sResponse = Left(sBufCmd, iPosSpace - 1)
End If
sGetAppExePathName = sResponse
End Function
Function bArgExists(sArg As String) As Boolean
' 返回布尔值:程序启动参数中是否包含指定字符串
' 拓扑关系:依赖于 sGetCommandLine()
Dim sBufCmd As String, bResponse As Boolean
sBufCmd = sGetCommandLine()
If """" = Left(sBufCmd, 1) Then
Dim iPosPairQuot As Integer
iPosPairQuot = InStr(2, sBufCmd, """")
bResponse = (InStr(1, Right(sBufCmd, Len(sBufCmd) - iPosPairQuot - 1), sArg) > 0)
Else
Dim iPosSpace As Integer
iPosSpace = InStr(2, sBufCmd, " ")
bResponse = (InStr(1, Right(sBufCmd, Len(bResponse) - iPosSpace), sArg) > 0)
End If
bArgExists = bResponse
End Function[/CODE]

2007-09-16 10:35
快速回复:[求助]如何让vb加入命令行方式?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023562 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved