顯示具有 VB6 標籤的文章。 顯示所有文章
顯示具有 VB6 標籤的文章。 顯示所有文章

2013年1月14日 星期一

[VB6]VB6 集合--不定期更新

函式
1. MkDir(ByVal Path As String):建立新目錄
2. Shell "Explorer.exe 資料夾路徑", vbNormalFocus:開啟資料夾



App物件的使用
1. 防止程式多次執行
Private Sub Form_Initialize()
    If App.PrevInstance Then End
End Sub

2. 取得版本
Dim Version As String
Version = App.Major & "." & App.Minor & "." & App.Revision
註:如果不想手動更改版本的話,可直接將「自動新增」的選項勾選,那麼在每次製成exe檔時它就會幫你自動變更版本囉!















變數型態
1.Integer:只要超過32767就溢位了,最近Debug才發現到原來Integer只要超過32767就會overflow。

2012年12月17日 星期一

[VB6]JMail的使用


在安裝完JMail之後,要使用寫來寄信有兩種方法,
主要差別在於是否需要驗證,如果你的郵件伺服器寄信是需要驗證的,
但是你卻用smtpmail這種方法,則會出現下面的錯誤:

執行階段錯誤 '-2147418113' (8000ffff)
The message was undeliverable. All servers failed to receive the message

所以必須先搞清楚寄信是否需要驗證哦!

方法一:
Set jmail = CreateObject("jmail.Message") '不可匿名,需驗證
jmail.ISOEncodeHeaders = False
jmail.ContentTransferEncoding = "8bit"
jmail.Charset = "BIG5" '郵件編碼
jmail.ContentType = "text/html" '設定為HTML傳送格式
jmail.Encoding = "base64"
jmail.MimeVersion = "1.0"
jmail.Priority = 3 '傳送優先等級分5級
jmail.From = From '寄件者名稱
jmail.MailServerUserName = "e-paper" '寄件者帳號
jmail.MailServerPassword = "epaper1332" '寄件者密碼
jmail.AddRecipient mailto '收件者Mail Address
jmail.body = body '信件內文
jmail.subject = subject '信件主旨
If attach <> Empty Then jmail.AddAttachment attach '附加檔案
jmail.Send "172.16.5.124" '郵件伺服器
Set jmail = Nothing

方法二:
Set jmail = CreateObject("jmail.smtpmail") '可匿名,不需驗證
jmail.ISOEncodeHeaders = False
jmail.ContentTransferEncoding = "8bit"
jmail.Charset = "BIG5" '郵件編碼
jmail.ContentType = "text/html"
jmail.Encoding = "base64" '設定為HTML傳送格式
jmail.ServerAddress = "172.16.5.254" '郵件伺服器
jmail.MimeVersion = "1.0"
jmail.Priority = 3 '傳送優先等級分5級
jmail.Sender = From '寄件者名稱
jmail.AddRecipient mailto '收件者Mail Address
jmail.body = body '信件內文
jmail.subject = subject '信件主旨
If attach <> Empty Then jmail.AddAttachment attach '附加檔案
jmail.Execute
Set jmail = Nothing

2012年10月22日 星期一

[VB6]引用C#所寫的DLL



1. 建立 C# DLL
    建置前要先做以下設定:
         a. 到專案按右鍵選擇「屬性」→「應用程式」→「組件資料」→勾選「讓組件成為 COM-Visible」
        b. 選擇「建置」→勾選「註冊 COM Interop」

2. 使用組件登錄工具(Regasm.exe) C# DLL 元件註冊至 COM 組件中
    開啟命令提示字元,依序執行以下指令註冊 DLL 檔至 COM 組件:
        a. cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
        b. RegAsm.exe DLL檔案路徑+檔名.dll /tlb:DLL檔名.tlb /codebase
        c. 會出現「…型別程式庫已經成功登錄」表示OK啦!

3. VB6 中使用 CreateObject Function 建立此 DLL Object
    Dim obj As Object
    Set obj=CreateObject("DLL檔名.Class1")
    要呼叫時只要用 obj.函式名() 即可

2012年9月27日 星期四

[VB6] 讓VB6能夠使用滑鼠滾輪的方法

最近工作一直在使用VB6,有個地方讓我覺得快抓狂了,
就是它在看程式碼的時候居然沒有辦法使用滑鼠滾輪,
於是,在用了一、二個禮拜之後我終於受不了啦!
心裡想說Google看看有沒有人有跟我一樣的困擾,
沒想到,原來受害人不只我一人呀!

現在就來分享一下該怎麼讓VB6裡的滑鼠滾輪產生作用吧!

Step 1:首先按此下載Wheel.exe(載點是Microsoft的連結),然後先將它解壓縮。

Step 2:「開始」→「執行」→輸入「regsrv32 <解壓檔案路徑>\VB6IDEMouseWheelAddin.dll」→按確定
註:如果跟我一樣會出現「…失敗,找不到指定的模組」的,我最後是將 VB6IDEMouseWheelAddin.dll 檔案複製放到「C:\WINDOWS\system32」底下去執行就可以了!

Step 3:再來開啟你的Visual Basic 6.0,在上方的工具列上選擇「增益集」→「增益功能管理員」→在增益功能管理員中選擇「MouseWheel Fix」後把「載入/載出」、「在啟動時載入」這兩項打勾

如此一來,在VB6中你也可以用你的滾輪,看你愛移到哪就移到哪囉!

2012年9月16日 星期日

[VB6]Excel使用

1. 開啟Excel檔案
Dim xlsBook As Excel.Workbook
'開啟Excel檔案
Set xlsBook = Workbooks.Open(".xls檔案位置")

2. 取得Excel第一個Sheet名稱
Dim sheetName As String
sheetName = xlsBook.Sheets(1).Name '取得Excel第一個活頁簿的名稱
Set xlsSheet = xlsBook.Worksheets(sheetName)