Cách tốt nhất (dễ nhất) để chụp ảnh màn hình của ứng dụng đang chạy với C++ trong Windows là gì?Cách tốt nhất để chụp ảnh màn hình của Window bằng C++ trong Windows là gì?
Trả lời
Bạn phải tải ngữ cảnh thiết bị của cửa sổ (GetWindowDC()
) và sao chép hình ảnh (BitBlt()
) từ đó. Tùy thuộc vào những gì khác bạn biết về ứng dụng, bạn sẽ sử dụng các phương pháp khác nhau để tìm tay cầm của cửa sổ nào để chuyển vào GetWindowDC()
.
Trên tài liệu chức năng keybd_event, nó cho biết bạn có thể sử dụng nó để chụp ảnh màn hình và lưu vào khay nhớ tạm. Ví dụ:
keybd_event(VK_SNAPSHOT, 0, KEYEVENTF_SILENT, 0);
Trong phiên bản của tôi (Visual Studio 2005 được cài đặt trên máy tính), bạn có thể chụp ảnh toàn màn hình bằng cách đặt tham số thứ hai là 0 hoặc ảnh chụp màn hình ứng dụng hiện tại bằng cách đặt ứng dụng đó thành 1.
Lấy nó ra khỏi bộ nhớ đệm tạm được để lại dưới dạng bài tập cho người đọc.
Tuy nhiên tôi nghĩ kỹ trước khi thực hiện việc này vì nó sẽ chuyển bất kỳ dữ liệu hình ảnh nào đã có trong khay nhớ tạm.
đó là sự kiện cho khóa PrintScr trên bàn phím. 'keybd_event' bạn đã nói không thể được sử dụng để chụp màn hình. một khái niệm sai sự hiểu biết! – jondinham
@Paul Theo dõi liên kết tôi đã bao gồm và kiểm tra phần Ghi chú: "Ứng dụng có thể mô phỏng báo chí của phím PRINTSCRN để lấy ảnh màn hình và lưu vào khay nhớ tạm. Để thực hiện việc này, hãy gọi keybd_event với thông số bVk được đặt thành VK_SNAPSHOT. " – Daemin
oh ok tôi thấy, không biết chúng tôi có thể mô phỏng báo chí của phím printscr :) – jondinham
Dưới đây là ví dụ code
Bạn có thể làm CaptureAnImage(GetDesktopWindow());
để chụp ảnh màn hình.
- 1. Chụp ảnh màn hình của video được nhúng bằng C#
- 2. Cách chụp màn hình để quay video bằng C# .Net?
- 3. Ảnh chụp màn hình quy trình trong Windows Service
- 4. Chụp ảnh màn hình với C \ GTK
- 5. Cách chụp ảnh màn hình bằng FireMonkey (đa nền tảng)
- 6. Làm cách nào để chụp ảnh màn hình/hình ảnh của trang web bằng Python?
- 7. Làm cách nào để chụp ảnh màn hình của iPhone/iPad bằng Xamarin.iOS (C#)?
- 8. Chụp ảnh màn hình trong C++ trên OSX
- 9. Cách chụp ảnh màn hình bằng VBScript trong TestComplete?
- 10. iOS Ảnh chụp màn hình một phần của màn hình
- 11. Cách lấy ảnh chụp màn hình của màn hình nền từ bộ đệm sau bằng DirectX
- 12. Cách chụp một phần của màn hình
- 13. Ảnh chụp màn hình Webdriver
- 14. Chụp ảnh màn hình máy tính để bàn bằng javascript
- 15. Chụp ảnh màn hình của Android OpenGL
- 16. Cách chụp ảnh màn hình bằng HTML-Unit?
- 17. Lớp phủ màn hình cho ảnh chụp màn hình
- 18. Cách tốt nhất để chuyển hình ảnh qua dịch vụ web trong C# là gì?
- 19. Thư viện C# để chụp ảnh màn hình?
- 20. Chụp màn hình cửa hàng Windows App
- 21. beamer includegraphics với ảnh chụp màn hình
- 22. Cách tạo ảnh chụp màn hình của QWidget?
- 23. Làm cách nào để chụp nhanh màn hình trong Java?
- 24. Cách tốt nhất để gọi StartPreview() sau khi chụp ảnh là gì?
- 25. Ảnh chụp màn hình OpenGL Android
- 26. tạo ảnh chụp màn hình của trang web bằng cách sử dụng jquery
- 27. Ảnh chụp màn hình bị rò rỉ?
- 28. iPad 3 ảnh chụp màn hình chậm
- 29. Chụp màn hình của máy tính để bàn ẩn
- 30. Chụp màn hình màn hình hiện tại của thiết bị
Nhấn nút 'In màn hình' trên bàn phím. –
Câu hỏi này không đúng chủ đề như thế nào? Nó yêu cầu làm thế nào để làm điều đó theo lập trình, mà có vẻ khá liên quan đến tôi (và không phải là quá phổ biến). – jamesdlin
Offtopic? Có thật không? – Nakilon