『壹』 求VBS JAVA 等簡單易懂的操作串口(com口)的代碼,
Comm.Output=字元串或byte
如果是可見字元,則可以直接輸出字元串,如Comm.Output="hello"
不然得用byte(數組),如
Comm.CommPort = 3 '...使用Com3口
Comm.Settings = "57600,n,8,1" '對串口通訊的相關參數。包括串口通訊的比特率,奇偶校驗,數據位長度、停止位等。其默認值 是「9600,N,8,1」,表示串口比特率是9600bit/s,不作奇偶校驗,8位數據位,1個停止位。
Comm.OutBufferSize = 1024
If Comm.PortOpen = False Then
Comm.PortOpen = True '...打開串口
End If
Comm.OutBufferCount = 0 '...清空輸出寄存器
Dim buffer(6) as Byte
buffer(0) = 255
buffer(1) = 1
buffer(2) = 0
buffer(3) = 0
buffer(4) = 0
buffer(5) = 0
buffer(6) = 1
Comm.Output = buffer
Comm.PortOpen = False
上面確實是VB的代碼。
在VBS中,沒有類型,所以聲明數組與初始化可能為:
Dim buffer(6)
buffer(0) = CByte(255)
...
我沒試過,不一定正確喲。
『貳』 VBS如何進行串口的讀數據操作,寫已經實現,但是讀一直無法觸發MSCOMM控制項的oncomm事件,不知道是什麼原因
這應該是由於動態庫或者是OCX文件沒有注冊好,或者遭到了破壞,這個控制項要載入MSCOMCTL.OCX,檢查一下這個文件
『叄』 請問各位大蝦VBS和JS腳本有什麼區別呢兩者哪個兼容性更好
VBS比較傾向與系統應用,JS比較傾向與WEB應用。JS的兼容性更好!
VBS只能在微軟公司的東西上運行,如Windows,MSIE。JS不僅可以在Windows上運行,還支持幾乎全部的瀏覽器,包括蘋果等移動設備,所以兼容性肯定是很好的。只是它的運行速度不如VBS,就是這樣。
歡迎追問。。
『肆』 求VBS 腳本編寫的串口發送接收
VB有串口控制項,可以做;但純粹用VBS腳本不調用外部dll,難!
『伍』 高分求VBS操作COM口的代碼
用VB給你做了一個,一邊是計算機串口,一邊是PLC。按你所說,我用計算機發送數據,如果有PLC的返回信息,就說明我發送成功了。
有設置發送字元,間隔時間,循環次數,有可以計算已經發送了多少次。
調試成功,結合你的工程,你再改一些應該沒什麼問題了。
反正基本就是這個原理。
對MSCCOMM做一些設置,對應你另一邊的通訊設備。
代碼如下:
Option Explicit
Dim strOutput$
Dim N%, C%
Private Sub cmdClear_Click()
txtSend.Text = ""
txtRec.Text = ""
End Sub
Private Sub cmdSend_Click()
Timer1.Interval = Val(txtTime.Text)
Timer1.Enabled = True
N = Val(txtCount.Text)
C = 0
txtSend.Enabled = False
txtTime.Enabled = False
txtCount.Enabled = False
cmdClear.Enabled = False
End Sub
Private Sub Form_Load()
MSComm1.PortOpen = True
End Sub
Private Sub MSComm1_OnComm()
Dim strInputBuf$
Select Case MSComm1.CommEvent
Case comEvReceive
strInputBuf = MSComm1.Input
If strInputBuf <> "" Then txtRec.Text = txtRec.Text + strInputBuf
Me.Refresh
End Select
End Sub
Private Sub Timer1_Timer()
strOutput = txtSend.Text + "*" + Chr(13)
MSComm1.Output = strOutput
txtRec.Text = ""
C = C + 1
Label4.Caption = C
If C > N - 1 Then
Timer1.Enabled = False
Label4.Caption = "完成"
txtSend.Enabled = True
txtTime.Enabled = True
txtCount.Enabled = True
cmdClear.Enabled = True
End If
End Sub
『陸』 VBS在html里無法執行
我寫了一段跟你差不多的代碼,當寫成<BUTTON onClick="open()">瀏覽</BUTTON>時好像也打不開,但是我修改了一些就可以了。
這是修改後的。你也這樣去試一下,就是在button標簽裡面寫一個名字(我這里寫了button1),然後把函數寫成 標簽名+動作 的形式。如果還有問題咱再討論一下。
『柒』 如何用VBS控制WEB網頁中的按鈕
元素ID.click()
『捌』 如何用VBS代碼,對電腦的串口進行接收和發送數據;拒絕VB,要VBS;
搜吧
按說 可以的
不過,還沒有 見過 VBS代碼!
『玖』 vbs 常用命令
1.點擊WIN按鈕,在運行對話框下面輸入cmd,打開命令提示符窗口。
注意事項:
VBS, Microsoft Visual Basic Scripting Edition是Visual Basic編程語言家族的最新成員,它將靈活的腳本語言引入到更廣泛的應用程序中,包括Microsoft Internet Explorer中的Web客戶端腳本和Microsoft Internet Information Server中的Web伺服器腳本。
『拾』 高分求VBS操作COM口的代碼,
用VB給你做了一個,一邊是計算機串口,一邊是PLC。按你所說,我用計算機發送數據,如果有PLC的返回信息,就說明我發送成功了。
有設置發送字元,間隔時間,循環次數,有可以計算已經發送了多少次。
調試成功,結合你的工程,你再改一些應該沒什麼問題了。
反正基本就是這個原理。
對MSCCOMM做一些設置,對應你另一邊的通訊設備。
代碼如下:
OptionExplicit
DimstrOutput$
DimN%,C%
PrivateSubcmdClear_Click()
txtSend.Text=""
txtRec.Text=""
EndSub
PrivateSubcmdSend_Click()
Timer1.Interval=Val(txtTime.Text)
Timer1.Enabled=True
N=Val(txtCount.Text)
C=0
txtSend.Enabled=False
txtTime.Enabled=False
txtCount.Enabled=False
cmdClear.Enabled=False
EndSub
PrivateSubForm_Load()
MSComm1.PortOpen=True
EndSub
PrivateSubMSComm1_OnComm()
DimstrInputBuf$
SelectCaseMSComm1.CommEvent
CasecomEvReceive
strInputBuf=MSComm1.Input
IfstrInputBuf<>""ThentxtRec.Text=txtRec.Text+strInputBuf
Me.Refresh
EndSelect
EndSub
PrivateSubTimer1_Timer()
strOutput=txtSend.Text+"*"+Chr(13)
MSComm1.Output=strOutput
txtRec.Text=""
C=C+1
Label4.Caption=C
IfC>N-1Then
Timer1.Enabled=False
Label4.Caption="完成"
txtSend.Enabled=True
txtTime.Enabled=True
txtCount.Enabled=True
cmdClear.Enabled=True
EndIf
EndSub
我VBS一點也沒用過,不懂啊。
你說每次發送一樣的數據,那就把txtSend.Text里輸入成你想要的輸出的16進制代碼。(呵呵,手動隨便改都能發出去,那發固定的更容易了)
還有最後一行的TEXT框是我調試用的(主要用來看返回信息,以確認是否發送送成功),你做程序時不用加上。
還有,16進制的發送,不知道對發送模式有講究,那個好象是MSCCOM的某個屬性,INPUTMODE吧?反正寫法和這個差不多。一個是文本發送,一個是二進制發送。這兩個都試一下,應該差不多了。
我也是VB新手,學習階段。只能幫這些了~~