Runtime Error 482 xảy ra khi dùng giao thức PrintForm. Cụ thể, khi thay cài đặt trang (như Orientation) → lỗi do phần hỏng của hệ thống hoặc tệp hỏng. Thường trên Windows cũ (95, 98, ME, NT, 2000), xuất hiện ngẫu nhiên.
Nguyên nhân Runtime Error 482
Run-time error '482': Printer Error
Hoặc: Printer Error. Do dùng PrintForm trên Windows cũ. Thời điểm lỗi khác nhau: Win2000/NT có thể lỗi sau khi gọi PrintForm thành công một lần; Windows cũ hơn có thể lỗi ngay lần đầu gọi PrintForm.
Cách khắc phục Runtime Error 482
Bước 1 – KHÔNG dùng "PrintForm"
Tránh xung đột với PrintForm. Workaround hiệu quả, thường luôn hoạt động.
Windows 2000 và NT:
- Gọi phương thức EndDoc sau lệnh PrintForm → khắc phục lỗi.
Windows cũ hơn:
- Gọi EndDoc trước lệnh PrintForm → tránh lỗi nhưng cài đặt Printer object bị mất (PrintForm dùng cài đặt máy in mặc định).
- Dùng Common Dialog control thay đổi thuộc tính trang thay vì gán trực tiếp cho Printer object.
Phương pháp EndDoc (Win2000/NT):
- Dùng Win32 API, nhập code:
Private Sub Form_Click()
Printer.Orientation = vbPRORPortrait
PrintForm
Printer.EndDoc
Printer.Orientation = vbPRORLandscape
PrintForm
End Sub
Phương pháp EndDoc (Windows cũ):
- Dùng Win32 API, nhập code:
Private Sub Form_Click()
Printer.Orientation = vbPRORPortrait
Printer.EndDoc
PrintForm
Printer.Orientation = vbPRORLandscape
Printer.EndDoc
PrintForm
End Sub
Chạy code này ngăn lỗi xảy ra. Nếu thất bại, bước 2.
Bước 2 – Dọn dẹp Registry
- Tải registry cleaner tại đây
Registry cũng gây lỗi 482. Registry lưu cài đặt máy in, theme, email... Dễ hỏng → máy chậm, lỗi. Dùng registry cleaner giữ hệ thống sạch.