Visual Basic (selanjutnya disebut VB) adalah sebelas bahasa pemrograman yang kuat. Terutama setelah 4.0, didukung teknologi OLE Automation, yang memberikan kemudahan lebih dalam pemrograman. Beberapa waktu lalu, saya mencoba menulis database yang mendukung web. Tapi karena tidak ada koneksi internet, saya tidak bisa mengujinya. Jadi, saya memikirkan OLEAutomation, yang dapat digunakan untuk menguji fungsi jaringan pada satu mesin. Setelah dimodifikasi, Anda juga dapat menggunakannya untuk terhubung melalui Modem. Selanjutnya saya akan memperkenalkan cara menggunakan Visual Basic untuk menulis sistem jaringan kecil.
---- Pertama, buat jaringan pendukung OLEAutomation
---- Mulai VB. Buat kotak daftar List1 dalam bentuk Form1, buat Frame1 di atasnya, dan atur properti Caption menjadi kosong. Buat Label1 di tengah, dan atur Captionnya menjadi kosong. Terakhir, buat Label2 dengan Caption UserList pada List1. Terakhir, instal timer Timer1, atur Intervalnya ke 3000, dan atur Enabled ke False. Pada titik ini, bagian formulir NetWorkConnection telah selesai.
----Kemudian, pilih Opsi di menu Alat VB dan isi berbagai konten sesuai kebutuhan.
----Selanjutnya, pilih Modul pada menu Sisipkan untuk membuat modul baru Modul1. Masukkan kode berikut di (Umum).
(Tipe data Info Pengguna)
KetikInfo Pengguna
Nama PenggunaAsString
AliasAsInteger
Tipe Akhir
(jumlah maksimum pengguna)
PublikConstMaxUser=10
(tentukan pesan)
PublicConstMsg_User_LogOn=1
PublicConstMsg_User_LogOff=2
(Setel tipe data)
Pengguna Publik(MaxUser)SebagaiUserInfo
Kotak Masuk Publik (Pengguna Maks) AsString
PublicUserSystemInboxAsInteger
PublicOnline(MaxUser)SebagaiBoolean
Subutama()
Formulir1.Tampilkan
Sub Akhir
---- Tipe data UserInfo mencatat nama pengguna dan alias pengguna yang masuk. Hanya gunakan alias untuk tampilan dan komunikasi. Nama pengguna hanya digunakan untuk menentukan valid atau tidaknya pengguna tersebut. Demi keamanan, data di atas tidak dapat diakses pengguna sesuka hati dan harus diakses melalui subrutin berikut.
----Pilih ClassModule di menu Sisipkan untuk membuat kelas baru Kelas1. Ubah namanya menjadi Common dan atur propertinya.
----Isi kode berikut.
----(Menyediakan fungsi untuk mendapatkan nilai ID pengguna. Pengguna dapat menggunakan alias untuk mengembalikan nilai ID melalui fungsi ini)
PublicFunctionGetUserID(AliasAsString)SebagaiInteger
UntukI=1ToMaxUser
JikaPengguna(I).Alias=AliasThenGetUserID=I
berikutnyaSaya
Fungsi Akhir
----(Menyediakan fungsi untuk memperoleh informasi sistem. Pengguna dapat menggunakannya untuk mengetahui apakah pengguna telah melakukan perubahan)
PublicFunctionGetSystemMessage()AsInteger
GetSystemMessage=UserSystemInbox
Fungsi Akhir
----(Menyediakan fungsi untuk mendapatkan informasi pengguna. Gunakan untuk mendapatkan alias semua pengguna online, dipisahkan dengan "|".)
PublicFunctionGetUserInfo()AsString
UntukI=1ToMaxUser
IfUsers(I).Nama Pengguna<>""Lalu
temp=temp Pengguna(I).Alias "|"
AkhirJika
selanjutnyaSaya
DapatkanUserInfo=temp
Fungsi Akhir
----(Menyediakan fungsi untuk memperoleh informasi pribadi pengguna. Digunakan untuk menerima pengguna lain
informasi yang dikirim oleh pengguna. )
PublicFunctionGetUserMessage(IDAsInteger)AsString
IfID<=0OrID>MaxUserThen
Fungsi Keluar
AkhirJika
GetUserMessage=Kotak Masuk(ID)
Fungsi Akhir
----(Menyediakan fungsi logout. Digunakan untuk logout dari jaringan.)
PublicFunctionLogOff(IDAsInteger)SebagaiBoolean
IfID<=0OrID>MaxUserThen
LogOff=Salah
Fungsi Keluar
AkhirJika
IfUsers(ID).Nama Pengguna<>""Lalu
Pengguna(ID).Nama Pengguna=""
LogOff=Benar
Kalau tidak
LogOff=Salah
AkhirJika
UserSystemInbox=Pesan_User_LogOff
`--------------UpdateForm1------------
UntukI=0ToForm1.List1.ListCount-1
IfForm1.List1.List(I)=Pengguna(ID).AliasThen
`Temukan alias pengguna di List1 dan hapus
Formulir1.Daftar1.HapusItemI
KeluarUntuk
AkhirJika
selanjutnyaSaya
IfForm1.List1.ListCount=0Then`jika tidak ada pengguna yang login
Form1.Label1.Caption="Terputus"
Form1.timer1.Enabled=Salah
AkhirJika
Fungsi Akhir
---- (Menyediakan fungsi login untuk mengakses Internet)
PublicFunctionLogOn(Nama PenggunaAsString,
AliasAsString)SebagaiInteger
UntukI=1ToMaxUser
IfUsers(I).Username=""Lalu
Pengguna(I).Nama Pengguna=Nama Pengguna
Pengguna(I).Alias=Alias
Masuk=Saya
UserSystemInbox=Msg_User_LogOn`Kirim informasi "login pengguna".
`--------------UpdateForm1------------
Form1.List1.AddItemAlias`Ada pengguna yang online
Form1.Label1.Caption="Tersambung"
Form1.timer1.Enabled=Benar
Fungsi Keluar
AkhirJika
selanjutnyaSaya
Masuk=0
Fungsi Akhir
----(Menyediakan fungsi menyegarkan tanda status online pengguna. Ini memungkinkan sistem menentukan apakah Anda sedang online. Jika fungsi ini tidak dipanggil dalam 6 detik, sistem akan secara otomatis menghapus Anda.)
PublicSubRefresh (IDAsInteger)
IfID<=0OrID>MaxUserThenExitSub
Online(ID)=Benar
Sub Akhir
----(Menyediakan fungsi mengirimkan informasi pribadi pengguna. Digunakan untuk mentransfer informasi ke pengguna lain.)
PublicFunctionSendUserMessage(MessageAs
String,ToIDAsInteger)SebagaiBoolean
IfToID<=0OrToID>MaxUserThen
SendUserMessage=Salah
Fungsi Keluar
AkhirJika
Kotak Masuk(ToID)=Pesan
SendUserMessage=Benar
Fungsi Akhir
----Masukkan sisa kode pada Kode Form1.
(Inisialisasi Formulir1)
PrivatSubForm_Load()
Label1.Caption="Terputus"
Form1.Caption="NetWorkConnectedServer"
Formulir1.Tampilkan
UntukI=1ToMaxUser
Pengguna(I).Nama Pengguna=""
selanjutnyaSaya
Sub Akhir
---- (Periksa apakah pengguna online secara teratur dengan menilai nilai Online)
PrivateSubtimer1_Timer()
UntukI=1ToMaxUser
IfUsers(I).Nama Pengguna<>""Lalu
IfOnline(I)=FalseThen
Fors=0ToList1.ListCount-1
IfList1.List(s)=Pengguna(I).AliasThen
Daftar1.HapusItem
Pengguna(I).Nama Pengguna=""
UserSystemInbox=Pesan_User_LogOff
`Kirim pesan "logout pengguna".
AkhirJika
Berikutnya
AkhirJika
Daring(I)=Salah
AkhirJika
berikutnyaSaya
IfList1.ListCount=0Lalu
`Jika tidak ada pengguna
Label1.Caption="Terputus"
timer1.Enabled=Salah
AkhirJika
Sub Akhir
---- Jalankan program ini. Mulai VB lain dan mulailah menulis bagian pengguna. Susun kontrol-kontrol ini seperti yang ditunjukkan di bawah ini dalam bentuk default.
----Isi kode berikut
PublicIDAsInteger
PublicConnectedAsObject
PrivateSubCommand1_Click()`Masuk
DimusernameAsString
DimaliasAsString
SetConnected=BuatObjek
("NetWorkConnection.Common")Mulai NetWorkConnection
nama pengguna=Teks1.Teks
alias=Teks2.Teks
ID=Connected.logon(username,alias)`Masuk dan kembalikan nilai ID
Timer1.Enabled=Benar
Perintah4_Klik
Sub Akhir
PrivateSubCommand2_Click()`Keluar
x=Terhubung.logoff(ID)
Timer1.Enabled=Salah
Setx=Nothing`lepaskan objek
Sub Akhir
PrivateSubCommand3_Click()`Kirim informasi pengguna
DimTempIDAsInteger
DimTempStringAsString
DimxAsString
DimyAsBoolean
x=Kombo1.Teks
TempID=Connected.getuserid(x)`Dapatkan nilai ID pengguna yang ditentukan
TempString=Teks3.Teks
y=Terhubung.mengirimkan pesan pengguna(TempString,TempID)
Sub Akhir
PrivateSubCommand4_Click()
ForI=0ToCombo1.ListCount1`Hapus Combo1
Kombo1.HapusItem0
selanjutnyaSaya
x=Connected.GetUserInfo`Menerima informasi pengguna
cd$=x
terakhir=1
UntukI=1ToLen(cd$)
IfMid$(cd$,I,1)="|"Lalu
Namaf$=Pertengahan$(cd$,terakhir,I-terakhir)
Combo1.AddItemNamef$` lepaskan alias pengguna dan tambahkan ke Combo1
terakhir = Saya 1
AkhirJika
selanjutnyaSaya
Sub Akhir
PrivateSubForm_Load()
Timer1.Enabled=Salah
Timer1.Interval=300
Sub Akhir
PrivateSubTimer1_Timer()
Connected.Refresh(ID)`Segarkan logo pengguna
x=Connected.GetSystemMessage()`Menerima informasi sistem
y=Connected.GetUserMessage(ID)`Menerima informasi pengguna
Ify<>""Andy<>Label6.CaptionThenLabel6.Caption=y
Ifx<>Val(Label4.Caption)Lalu`Segarkan Kombo1
Label4.Keterangan=x
Perintah4_Klik
AkhirJika
Sub Akhir
---- Mulai berlari. Masukkan Nama Pengguna dan Alias Anda, klik LogOn, dan periksa contoh VB sebelumnya untuk melihat apakah nama Anda disertakan. Jika iya, berarti “hub” Anda berhasil. Saat ini, apa pun alasan pengguna yang masuk untuk memutuskan sambungan tanpa menggunakan LogOff, sistem akan secara otomatis menghapus pengguna tersebut setelah 6 detik. Pastikan pengguna lain tidak terpengaruh.
---- Program ini telah dimodifikasi untuk mendukung fungsi Modem. Bagian pengguna dari program ini dapat tetap utuh. Saat kompilasi, pilih RemoteSupportFile di Opsi dan gunakan program instalasi yang disertakan untuk menginstalnya di server jaringan agar benar-benar mencapai "jaringan". ->