❶ VB中的Shell 函數怎麼用
把我自己總結的shell和ShellExecute的用法分享一下:
shell 函數只可以執行.exe .com .bat 的可執行文件。
ShellExecute 是個api函數,可以執行與Windows系統相關聯的文件。比如:
shell "c:\1.doc" 應該報錯的,因為shell只能執行.exe .com .bat
應:ShellExecute Me.hwnd, "open", "C:\1.doc", "", "", 0
ShellExecute Me.hwnd, "open", "http://xiaofeng0663.go3.icpcn.com", "", "", 5
ShellExecute hwnd, "open", "C:\1.xls", vbNull, vbNull, SW_SHOWNORMAL
ShellExecute聲明:Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
打開文件夾
shell "explorer 文件夾",1
shell "cmd /c start D:\music"
打開d盤下music的文件夾
打開網址:
Shell "C:\Program Files\TheWorld 2.0\TheWorld.exe http://www..com", 1
Shell "explorer.exe http://www..com", 1
(Shell "C:\Program Files\Internet Explorer\IEXPLORE.EXE " & strurl , 1)
(sub main()
strfilepath = "F:\cp\C\成果\test\t.dsw"
Shell "C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin\MSDEV.EXE " & strfilepath, 1
End Sub
)
調用系統計算器Shell "calc.exe", 3
調用記事本Shell "NotePad ", vbNormalFocus(打開某個記事本:Shell "NOTEPAD.EXE " & 文檔路徑, vbNormalFocus)
打開任務管理器:Shell "c:\windows\system32\taskmgr.exe", 1
打開資源管理器:Shell "c:\windows\explorer.exe " & path, 1
注銷用戶 Shell "shutdown -l"
關閉系統 Shell "shutdown -S -t 0"
重啟 Shell "shutdown -R -t 0"
0是代表響應的時間
結束explorer.exe進程
Shell "taskkill /f /im explorer.exe ", vbHide
(結束其它進程也是這樣,如:shell "taskkill /f /im ttplayer.exe")
❷ 怎麼讓VB中shell命令執行完第一個命令,再執行第二次命令
這樣調用應用程序或批處理文件確實不好。但可以這樣操作:Shell "cmd.exe /c具體命令行(如Ipconfig查詢IP地址)", vbHide。如下:Shell "cmd.exe /cipconfig", vbHide 就是利用VB查詢IP地址的,如命令行不多用此方法重復幾次也是可以的。
❸ VB中的shell函數是干什麼的怎麼用啊
Shell函數是VB中的內部函數,它負責執行一個可執行文件,返回一個Variant(Double),如果成功的話,代表這個程序的進程ID,若不成功,則會返回0,shell一個非常重要的特性是它可作為一種編程語言來使用。
Shell的語法:Shell(PathName[,WindowStyle])。
PathName 為必需參數,類型為String,它指出了要執行的程序名,以及任何需要的參數或命令行變數。
(3)vbshell命令擴展閱讀:
因為shell是一個解釋器,所以它不能對為它編寫的程序進行編譯,而是在每次從磁碟載入這些程序時對它們進行解釋,而程序的載入和解釋都是非常耗時的。
針對此問題,許多shell(如BourneAgainShell)都包含shell函數,shell把這些函數放在內存中,這樣每次需要執行它們時就不必再從磁碟讀入。
❹ vb中shell的用法還有調用內部命令誰來教一下
shell
有兩個方式
第一個有返回值的
pro=shell("路徑",打開文件的狀態)
第二個
shell
"路徑",打開文件的狀態
其中
路徑就不用說了吧.
打開文件的狀態好象是有三個吧.0,1,2
一般1表示默認的.所以一般用的時候用這個.2,好象是最小化,0是最大.
調用內部命令
1,如果你指的是內部函數的話.
一般的用法和上面那個一樣.
比如消息框
x=msgbox("prompt",style,"title")
或者
msgbox"prompt",style,"title"
類似的有INPUTBOX函數
X=inputbox("prompt","title",default)
他們的屬性我就不一一介紹了,你可以查下.
另外,如果你指的是調用API的話,那就比較麻煩了。
不過大概是這個樣子的
[public]
declare
function(sub)
名稱
Lib
系統函數名
Alias
別名(值.....)
as
類型
舉個例子
Declare
Function
SetFocus
Lib
"user32"
"SetFocus"
(ByVal
hwnd
As
Long)
As
Long
❺ VB如何用Shell命令調用CMD來修改IP
Dim Wsh
Set Wsh=WScript.CreateObject("WScript.Shell")
set objShell=wscript.createObject("wscript.shell")
set Runexe=createobject("wscript.shell")
objShell.Run("netsh interface ip set address name=本地連接 source=static addr=192.168.10.222 mask=255.255.255.0"),0
objShell.Run("netsh interface ip set address name=本地連接 gateway=192.168.10.254 gwmetric=0"),0
objShell.Run("netsh interface ip set dns name=本地連接 source=static addr=192.168.1.1 register=PRIMARY"),0
Set Wsh=NoThing
wscript.quit
===
本地連接是指網卡的名字,也就是在網路連接里看到的網卡名稱
❻ vb中shell的完整用法
SHELL語句用法心得
一. 調用系統「創建快捷方式」向導
是否為VB不支持創建快捷方式而於著急呢?雖然 您可以調用vb5stkit.Dll中的fCreateShellLink函 數,但它是為安裝程序設計的,快捷方式的默認路徑 總是從當前用戶的「\Start Menu\Programs」開始,也 就是說,如果您的Windows95裝在C盤上,您無法通過 fCreateShellLink函數把快捷方式創建到D盤上去。
現在,給大家介紹一種極為方便、巧妙的方法: 用Shell語句調用系統「創建快捷方式」向導。
新建一個項目,在窗體上放一個按鈕,雙擊此按 鈕,加入以下代碼:
Private Sub Command1_Click()
Open App.Path & "\temp.lnk" For Output As #1
Close #1 '以上兩句在程序所在目錄建立一 個臨時文件
Shell "Rundll32.exe AppWiz.Cpl,NewLinkHere
"& App.Path & "\temp.lnk"
End Sub
(注意:Shell語句中NewLinkHere後面跟著一個 空格才是引號,否則將出錯。)
運行程序,按一下命令按鈕,怎麼樣?「創建快 捷方式」向導出現了,如果創建成功,快捷方式將取 代臨時文件temp.lnk的位置,如果選取消,temp.lnk 也會自動消失。當然,您可以在硬碟的任意位置建立 temp.lnk。好,現在又可以為您的程序增添一項新功 能了。Enjoy!
二. Rundll32.exe的用途
我們知道,用Shell語句只能調用可執行文件,即 exe、com、bat和pif文件,有時我們想要調用其他一 些系統功能該怎麼辦呢?此時,Windows提供的 Rundll32.exe可大顯身手了。下面我們來認識一下這 些用法,也許會給您帶來一點驚喜。
1.要打開設置系統時間的控制面板文件 (Timedate.cpl),只需運行如下代碼:
Shell "Rundll32.exe
Shell32.dll,Control_RunDLL Timedate.cpl"
至於打開其他控制面板文件,相信您一定能夠舉 一反三,嘗試一下,換個文件名就成了。
2.要運行某一快捷方式(*.lnk)則可以用以下 代碼:
She11 "Rundll32.exe url.dll, FileProtocolHandler X" (X代表要運行的文件,包括 路徑,下同。
3. 也可以這樣寫來打開ActiveMovie控制:
Shell "RUNDLL32.EXE amovie.ocx,Rundll",1
而用Shell "RUNDLL32.EXE amovie.ocx,Rundll /play X",1 將直接播放媒體文件。
4. Shell "rundll32.exe desk.cpl,InstallScreenSaver X」當然是安裝屏幕保 護啦,如果你寫了一個屏幕保護程序,那麼可以在安 裝程序中寫上它,而不一定要裝到system目錄下。順 便提一下,VB不是自撈一個「Application Setup Wizard」么?它的VB源代碼都在安裝目錄下的 「\setupkit\setup1」中放著呢,好好把它研究一下。 你完全能做出富有個性的安裝程序來。
5.按住shift鍵,右擊某一文件,菜單中會出現 「打開方式」選項,這也許已不是什麼秘密。但現在, 用shell "rundll32.exe shell32.dll OpenAs_RunDLL X" 便能直接調用「打開方式」框。
6. 甚至能用這樣一句來列印文件(包括HTML所 支持的所有文本與圖像格式):
Shell "rundll32.exe MSHTML.DLL,PrintHTML X」, 1
怎麼樣?是不是小有收獲呢?這下,您一定會對 Rundll32.exe這個平時不起眼的文件另眼相待了,它 可是系統運行必不可少的部件呢!其實 Shell+Rundll32還能調用其他許多系統功能,比如關 於NetMeeting和Telnet方面的。如果您有興趣,可以 到往冊表的「我的電腦\HKEY_CLASSES_ROOT\」或「我 的電腦\HKEY_LOCAL_MACHINE\Software\CLASSES」下 去看看,本文的內容大都是從那裡「抄」來的。只要 有足夠的決心、信心、耐心,您一定能發現更多有價 值的東西。Good luck!
❼ vb的shell命令求救!
這句
yuui = Shell("shutdown -s -t + T1 + ", vbNormalFocus)
改成:
yuui = Shell("shutdown -s -t " + str(val(T1)) , vbNormalFocus)