msvcrt --- Các thủ tục hữu ích từ thời gian chạy MS VC++¶
Các chức năng này cung cấp quyền truy cập vào một số khả năng hữu ích trên nền tảng Windows. Một số mô-đun cấp cao hơn sử dụng các chức năng này để xây dựng các triển khai Windows cho các dịch vụ của chúng. Ví dụ: mô-đun getpass sử dụng điều này trong việc triển khai hàm getpass().
Bạn có thể tìm thêm tài liệu về các chức năng này trong tài liệu Nền tảng API.
Mô-đun này triển khai cả biến thể char thông thường và char rộng của api I/O trên bảng điều khiển. API bình thường chỉ xử lý các ký tự ASCII và được sử dụng hạn chế cho các ứng dụng quốc tế hóa. Nên sử dụng char API rộng bất cứ khi nào có thể.
sẵn có: Windows.
Thay đổi trong phiên bản 3.3: Các hoạt động trong mô-đun này hiện nâng cao OSError trong đó IOError được nâng lên.
Hoạt động tập tin¶
- msvcrt.locking(fd, mode, nbytes)¶
Khóa một phần của tệp dựa trên bộ mô tả tệp fd từ thời gian chạy C. Tăng
OSErrorkhi thất bại. Vùng bị khóa của tệp mở rộng từ vị trí tệp hiện tại đối với byte nbytes và có thể tiếp tục vượt ra ngoài phần cuối của tệp. mode phải là một trong các hằng sốLK_*được liệt kê bên dưới. Nhiều vùng trong một tệp có thể bị khóa cùng lúc nhưng không được chồng chéo. Các vùng liền kề không được hợp nhất; chúng phải được mở khóa riêng lẻ.Tăng một auditing event
msvcrt.lockingvới các đối sốfd,mode,nbytes.
- msvcrt.LK_LOCK¶
- msvcrt.LK_RLCK¶
Khóa các byte được chỉ định. Nếu không thể khóa byte, chương trình sẽ thử lại ngay sau 1 giây. Nếu sau 10 lần thử mà không thể khóa được byte thì
OSErrorsẽ được nâng lên.
- msvcrt.LK_NBLCK¶
- msvcrt.LK_NBRLCK¶
Khóa các byte được chỉ định. Nếu không thể khóa byte,
OSErrorsẽ được nâng lên.
- msvcrt.LK_UNLCK¶
Mở khóa các byte được chỉ định, vốn phải bị khóa trước đó.
- msvcrt.setmode(fd, flags)¶
Đặt chế độ dịch cuối dòng cho bộ mô tả tệp fd. Để đặt nó ở chế độ văn bản, flags phải là
os.O_TEXT; đối với nhị phân, nó phải làos.O_BINARY.
- msvcrt.open_osfhandle(handle, flags)¶
Tạo bộ mô tả tệp thời gian chạy C từ phần xử lý tệp handle. Tham số flags phải là OR theo bit của
os.O_APPEND,os.O_RDONLY,os.O_TEXTvàos.O_NOINHERIT. Bộ mô tả tệp được trả về có thể được sử dụng làm tham số choos.fdopen()để tạo đối tượng tệp.Bộ mô tả tập tin có thể kế thừa theo mặc định. Chuyển cờ
os.O_NOINHERITđể làm cho nó không thể kế thừa được.Tăng một auditing event
msvcrt.open_osfhandlevới các đối sốhandle,flags.
- msvcrt.get_osfhandle(fd)¶
Trả về phần xử lý tệp cho bộ mô tả tệp fd. Tăng
OSErrornếu fd không được nhận dạng.Tăng một auditing event
msvcrt.get_osfhandlevới đối sốfd.
Bảng điều khiển I/O¶
- msvcrt.kbhit()¶
Trả về giá trị khác 0 nếu phím nhấn đang chờ đọc. Ngược lại trả về 0.
- msvcrt.getch()¶
Đọc một lần nhấn phím và trả về ký tự kết quả dưới dạng chuỗi byte. Không có gì được lặp lại với bảng điều khiển. Cuộc gọi này sẽ chặn nếu chưa có phím nhấn nhưng sẽ không đợi Enter được nhấn. Nếu phím được nhấn là phím chức năng đặc biệt, phím này sẽ trả về
'\000'hoặc'\xe0'; cuộc gọi tiếp theo sẽ trả về mã khóa. Không thể đọc được phím bấm Control-C bằng chức năng này.
- msvcrt.getche()¶
Tương tự như
getch(), nhưng phím nhấn sẽ bị vang vọng nếu nó đại diện cho một ký tự có thể in được.
- msvcrt.putch(char)¶
In chuỗi byte char ra bàn điều khiển mà không cần đệm.
Các chức năng khác¶
- msvcrt.heapmin()¶
Buộc vùng nhớ
malloc()tự dọn dẹp và trả lại các khối không sử dụng cho hệ điều hành. Khi thất bại, điều này sẽ tăngOSError.
- msvcrt.set_error_mode(mode)¶
Thay đổi vị trí nơi thời gian chạy C ghi thông báo lỗi về lỗi có thể kết thúc chương trình. mode phải là một trong các hằng số
OUT_*được liệt kê bên dưới hoặcREPORT_ERRMODE. Trả về cài đặt cũ hoặc -1 nếu xảy ra lỗi. Chỉ có ở debug build of Python.
- msvcrt.OUT_TO_DEFAULT¶
Lỗi chìm được xác định theo loại ứng dụng. Chỉ có ở debug build of Python.
- msvcrt.OUT_TO_STDERR¶
Lỗi chìm là một lỗi tiêu chuẩn. Chỉ có ở debug build of Python.
- msvcrt.OUT_TO_MSGBOX¶
Lỗi chìm là một hộp thông báo. Chỉ có ở debug build of Python.
- msvcrt.REPORT_ERRMODE¶
Báo cáo giá trị chế độ lỗi hiện tại. Chỉ có ở debug build of Python.
- msvcrt.CrtSetReportMode(type, mode)¶
Chỉ định đích hoặc các đích cho loại báo cáo cụ thể được tạo bởi
_CrtDbgReport()trong thời gian chạy MS VC++. type phải là một trong các hằng sốCRT_*được liệt kê bên dưới. mode phải là một trong các hằng sốCRTDBG_*được liệt kê bên dưới. Chỉ có ở debug build of Python.
- msvcrt.CrtSetReportFile(type, file)¶
Sau khi bạn sử dụng
CrtSetReportMode()để chỉ địnhCRTDBG_MODE_FILE, bạn có thể chỉ định phần xử lý tệp để nhận văn bản tin nhắn. type phải là một trong các hằng sốCRT_*được liệt kê bên dưới. file phải là tệp xử lý mà bạn muốn chỉ định. Chỉ có ở debug build of Python.
- msvcrt.CRT_WARN¶
Cảnh báo, tin nhắn và thông tin không cần chú ý ngay lập tức.
- msvcrt.CRT_ERROR¶
Lỗi, sự cố không thể khắc phục và sự cố cần được chú ý ngay lập tức.
- msvcrt.CRT_ASSERT¶
Khẳng định thất bại.
- msvcrt.CRTDBG_MODE_DEBUG¶
Viết thông báo vào cửa sổ đầu ra của trình gỡ lỗi.
- msvcrt.CRTDBG_MODE_FILE¶
Viết thông báo vào một tập tin xử lý do người dùng cung cấp.
CrtSetReportFile()nên được gọi để xác định tệp hoặc luồng cụ thể sẽ sử dụng làm đích.
- msvcrt.CRTDBG_MODE_WNDW¶
Tạo một hộp thông báo để hiển thị thông báo cùng với các nút
Abort,RetryvàIgnore.
- msvcrt.CRTDBG_REPORT_MODE¶
Trả về mode hiện tại cho type đã chỉ định.
- msvcrt.CRT_ASSEMBLY_VERSION¶
Phiên bản hội CRT, từ tệp tiêu đề
crtassem.h.
- msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN¶
Mã thông báo khóa công khai của VC Assembly, từ tệp tiêu đề
crtassem.h.
- msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX¶
Tiền tố tên Hội thư viện, từ tệp tiêu đề
crtassem.h.