您好我的代码如下:
LPSTR Bufor;
DWORD dwRozmiar, dwPrzeczyt;
HANDLE hPlik;
LRESULT CALLBACK WndProc (HWND hwnd, UINT msg,WPARAM wParam, LPARAM lParam)
{
hPlik = CreateFile( "test.txt", GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL );
if( hPlik == INVALID_HANDLE_VALUE ) {
MessageBox( NULL, "Cant open a file", "Error1!", MB_ICONEXCLAMATION );
PostQuitMessage( 0 );
}
Bufor[ dwRozmiar ] = 0;
SetWindowText( hwnd, Bufor );
}
我得到invalid_handle_value?为什么? 程序显示第一个消息框:无法打开文件。
当我致电GetLastError
时,会返回值32。
答案 0 :(得分:1)
Windows错误代码32为ERROR_SHARING_VIOLATION
。这意味着该文件已由某个其他实体使用共享模式打开,该共享模式拒绝您的进程访问。
其他实体似乎是您自己的程序。您打开文件然后无法关闭它。
你的窗口过程也完全坏了。现在是时候退一步,掌握基础知识了。