Lỗi code ByVal, khi chỉnh code cho 64 Bit

Liên hệ QC

NguyenthiH

Thành viên mới đăng ký
Tham gia
11/12/16
Bài viết
946
Được thích
172
Giới tính
Nữ
Chào mọi người, em có file bị lỗi này:
loi124.png
và nhấn OK thì lỗi ngay dòng này, file này trước viết office 32 bit, giờ máy cài 64 bit, và em có chỉnh lại theo anh @HeSanbi , nhưng tơi sđoạn này thì bị như vậy. Mong mọi người xem giúp.
Mã:
Public Declare PtrSafe Function MenuItemFromPoint Lib "user32" (ByVal hwnd As Long, ByVal hMenu As Long, ByVal ptScreen As POINTAPI) As Long
 
Bạn tạm sửa như thế này, thành ByRef:

JavaScript:
Public Declare PtrSafe Function MenuItemFromPoint Lib "user32" (ByVal hwnd As LongPtr, ByVal hMenu As LongPtr, ptScreen As POINTAPI) As Long

POINTAPI trong Win64 bit chỉ là một giá trị vùng nhớ không phải thông số x và y như win32. Mã cần cải tiến để tương thích.
 
Lần chỉnh sửa cuối:
Upvote 0
Mã trong ứng dụng của bạn là 32bit, cần chuyển toàn bộ tương thích 32 và 64 bit, chứ không riêng gì một đoạn mã.

Bạn sao đủ khả năng để làm điều đó khi không biết về VBA, chưa nói đến Win32 API.
 
Upvote 0
Khổ nỗi, file này là của Thầy Batman1 (Swittom) làm cho em, mà giờ máy cty cài Office 64 bit, mà Thầy Batman1 thì không vào DD nữa. huhuhu...
 
Upvote 0
Web KT
Back
Top Bottom