Ứng Dụng VB6 Viết Hàm API 32 bit

Liên hệ QC

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,421
Được thích
4,033
Giới tính
Nam
đang rảnh + né covi Tôi hướng dẫn cho ai đó nếu đam mê VB6 Viết Hàm API 32 bit trên VB6
1/ chép Code sau vào 1 Module trên EXE của VB6
Mã:
Public Declare Function SetDllDirectoryW Lib "kernel32" (ByVal pszPath As Long) As Long
Public Declare Function ShowMsgBox Lib "DLLVB6.dll" (ByVal bstrMsg As Long) As VbMsgBoxResult
Public Declare Sub test Lib "DLLVB6.dll" ()
Public Declare Sub test2 Lib "DLLVB6.dll" ()
Public Declare Sub test3 Lib "DLLVB6.dll" ()
Private Function MakeTrue(ByRef bValue As Boolean) As Boolean
    bValue = True
    MakeTrue = True
End Function

Sub Main()
    Dim bIsInIDE As Boolean
    Debug.Assert MakeTrue(bIsInIDE)
    If bIsInIDE Then
        SetDllDirectoryW (StrPtr(App.Path))
    End If
    ShowMsgBox StrPtr("KieuManh")
    test
    test2
    test3
End Sub

2/ Code trên DLL như sau

Mã:
Option Explicit
Private Declare Function MessageBoxTimeout Lib "user32" Alias "MessageBoxTimeoutA" _
          (ByVal hWnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal uType As VbMsgBoxStyle, ByVal wLanguageId As Long, ByVal dwMilliseconds As Long) As Long
Rem Viet cac ham vao cac Module
Public Function ShowMsgBox(ByVal sText As String) As VbMsgBoxResult
    MessageBoxTimeout 0, sText, "", vbInformation + vbOKOnly, 0&, 3000
End Function

Sub test()
    MsgBox " day la test DLLVB6"
End Sub

Sub test2()
    MsgBox " day la test2 DLLVB6"
End Sub

Sub test3()
    MsgBox " day la test2 DLLVB6"
End Sub

3/ Lưu ý Files EXE và DLL tôi set cho nó ở chung 1 Folder đấy ... nếu tách nó ra thì ai đó tự viết lại code lấy nha

Toàn bộ code Úp lên cho ai thử vui vẻ chút ... cách trên tôi học được từ 1 tay code người Nga
 

File đính kèm

  • API32bit_VB6.rar
    10.1 KB · Đọc: 16
Lần chỉnh sửa cuối:
Bạn ơi mình cài VB6 mà máy tính lại cài win64 thì có phát sinh lỗi gì không sao lúc VB6 xuất ra file dll hiện thông báo:
VB6.JPG
Click "yes" thì vẫn lưu được file mà khi vào excel đăng ký dùng thư viện này thì không được. Hình như không ghi vào regedit được hay sao á.
 
Bạn ơi mình cài VB6 mà máy tính lại cài win64 thì có phát sinh lỗi gì không sao lúc VB6 xuất ra file dll hiện thông báo:
View attachment 266669
Click "yes" thì vẫn lưu được file mà khi vào excel đăng ký dùng thư viện này thì không được. Hình như không ghi vào regedit được hay sao á.
dịch cái Từ tiếng Anh đó xong tự xử đi
Run As VB6.EXE là hết

Suy cho cùng cái đó ko liên quan gì tới chủ đề này cả he
 
Bạn ơi mình cài VB6 mà máy tính lại cài win64 thì có phát sinh lỗi gì không sao lúc VB6 xuất ra file dll hiện thông báo:
View attachment 266669
Click "yes" thì vẫn lưu được file mà khi vào excel đăng ký dùng thư viện này thì không được. Hình như không ghi vào regedit được hay sao á.
Bạn dùng Excel 64 bit phải không? Excel 64 thì không dùng được dll 32.
 
Bạn dùng Excel 64 bit phải không? Excel 64 thì không dùng được dll 32.
lách chút là sử dụng chung cho 32 bit và 64 bít thôi
bạn thử File bài 1 đi xong cho ý kiếm ta bàn cái này chút
còn cái 64 bít tôi chỉ cho 1s là xong thôi ... nhưng sẻ chỉ thớt khác he
 
À mình nhầm, đây là vb6 exe gọi dll, cả hai đều là 32 bit. Mà vb6 cũ quá rồi, bỏ thôi bạn ơi.
 
À mình nhầm, đây là vb6 exe gọi dll, cả hai đều là 32 bit. Mà vb6 cũ quá rồi, bỏ thôi bạn ơi.
Viết DLL = VB6 sử dụng tốt cho Office 64 bít đấy
Link sau viết DLL = VB6 sử dụng chung 1 File cho Office 32 và 64 bít đấy

 
xem hàm xuất thì thấy y trang các DLL API khác

1632567069683.png
 
File + code bài số 1 đó anh ...

1/ tải về xóa cái DLL đi xong build lại cái dll khác
2/ xóa cái EXE đi xong mở file UsingDLL.vbp xong thử nhấn Run xem sao có thấy chạy không

xong 2 mục trên nếu xác nhận chạy ok ... tôi sẻ chỉ dẫn cho tiếp
mọi cái có hết trong đó tại chưa biết nó ở đâu thôi :D

1632648065088.png
 
à quên 64 bit ... chuyển 1s nhưng sẻ phát sinh cảnh báo virus giả do chính ta code

1/ khi ta viết DLL thì nó build ở một chế độ gì đó mà Virus Total bỏ qua hay gì đó mà ta ko biết được
2/ khi chuyển qua sử dụng trên 64 bít là 1 EXE sẻ phát sinh báo virus mặc dù code vẫn y trang thế
3/ Viết lại code chặt chẻ chút là hết virus

Cách chuyển thô nhất mà báo virus do ta code như sau

1/ Xem hình là DLL

1632649120533.png

2/ Xem hình chuyển qua EXE sử dụng cho 64 bít ... code két mọi cái ko cần thay đổi gì hết
nó là 1 ActiveX EXE lách sự kiểm soát của Windows thôi

1632649219367.png

Còn nhiều cách lách nữa ... tạm cách đó xem sao cái đã
 
Lần chỉnh sửa cuối:
Các bạn ai còn iu thích vb6 thì cứ yên tâm mà viết sử dụng sau 10 năm nữa

Xem câu nói của 1 tay hacker người Nga nha ... Viết DLL = VB6 ko cần thiết phải Pack gì hết
nếu có nên mã hóa các chuỗi string lại ... vì thấy hết thế thôi

1632714010382.png
 
Viết API trên VB6 thì là API nhái ... không chính hãng mà vô tình phát hiện ra nó miễm nhiễm với vài Tools hack xem code của nó

ActiveX chính tông VB6 thì lại ko add vào được mà API chính tông cũng ko đúng ............. thôi thì tạm keo nó là DLL lưỡng tính

Có những thứ mà cha đẻ ra nó là Ms cũng ko hình dung ra thế hệ sau nó tùy biến khiếp

1632733640267.png
 

File đính kèm

  • VB6LibraryAPI.rar
    3.3 KB · Đọc: 2
Web KT
Back
Top Bottom