Вот мой код, в котором у меня есть на бесконечном цикле (к моему знанию)Почему WriteFile не запускается более одного раза?
while(true) {
DWORD TitleID = XamGetCurrentTitleId();
std::ostringstream titleMessageSS;
titleMessageSS << "Here's the current title we're on : " << TitleID << "\n\n";
std::string titleMessage = titleMessageSS.str(); // get the string from the stream
DWORD dwBytesToWrite = (DWORD)titleMessage.size();
DWORD dwBytesWritten = 0;
BOOL bErrorFlag = FALSE;
HANDLE logFile = CreateFile("Hdd:\\LOGFile.txt", GENERIC_WRITE, 0, NULL, CREATE_NEW, FILE_ATTRIBUTE_NORMAL, NULL);
bErrorFlag = WriteFile(logFile, titleMessage.c_str(), dwBytesToWrite, &dwBytesWritten, NULL);
CloseHandle(logFile);
Sleep(30000);
}
return NULL;
Кто-нибудь видит причин, почему это только пишет только один раз? Я ждал более 5 минут, чтобы убедиться, что это все закончится безрезультатно.
Все это не стандартное C++, я бы серьезно рекомендовал вам использовать классы и функции из [Стандартной библиотеки ввода-вывода] (http://en.cppreference.com/w/cpp/io). Также обратите внимание, что цикл 'while (true)' никогда не заканчивается, вероятно, это не то, что вы хотите сделать. –
Проверьте возврат ошибок при каждом системном вызове (в частности, «CreateFile»). –
MSDN: CREATE_NEW: Создает новый файл, только если он еще не существует. –