Re[4]: Не отображаются русские имена файлов?!
От: schoolboy  
Дата: 05.04.06 18:04
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>а ты все-таки попоробуй


Здравствуйте, Odi$$ey, Вы писали:

OE>а ты все-таки попоробуй


А я уже и попытался, только результат без изменений. Даже используя функцию установки кодовой страницы (SetConsoleOutputCP(1251) таже самая абракадабра. После внесенных изменений программа выглядит таким образом: (Только вывод попрежнему неправильный).

#include <windows.h>
#include <wincon.h>
#include <iostream>
#include <stdio.h>
#define UNICODE
main()
{
      using std::cout;
      using std::cin;

char s;
LPCTSTR lpFileNamef = "E:\\temp\\*.*\0";
LPWIN32_FIND_DATA lpFindFileDataf;
HANDLE fResult, hFindFilef, hStdOutputHandle, hStdInputHandle;
BOOL fNext=1;
WIN32_FIND_DATA fName;
DWORD dwResult;

SetConsoleOutputCP(1251);
hStdOutputHandle = GetStdHandle(STD_OUTPUT_HANDLE);

fResult = FindFirstFile(lpFileNamef, lpFindFileDataf);
fName = *lpFindFileDataf;
WriteConsole(hStdOutputHandle, fName.cFileName, strlen(fName.cFileName), &dwResult, NULL);
cout << '\n';

do{
      fNext = FindNextFile(fResult, lpFindFileDataf);
      fName = *lpFindFileDataf;
      WriteConsole(hStdOutputHandle, fName.cFileName, strlen(fName.cFileName), &dwResult, NULL);
      cout << '\n';
      }while (fNext);
      
cout << GetConsoleOutputCP(); //Смотрим изменилась ли кодовая страница

cin >> s;
}


СпасиБО!!! за внимание к моей проблеме.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.