Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2010, 17:29   #1
Stepan575
Пользователь
 
Регистрация: 25.11.2010
Сообщений: 18
По умолчанию Проверить существование папки

Код:
DWORD dwAttrs;
LPCWSTR aa=L"C:\PO";
	
dwAttrs = GetFileAttributes(aa);

if(dwAttrs & INVALID_FILE_ATTRIBUTES)
   {  
      cout<<"Нет такой папки!!"<<endl;
      return 0;
   }
else 
     if(dwAttrs & FILE_ATTRIBUTE_DIRECTORY)
          cout<<"Папка существует"<<endl;
почему не работает??
Оба if-условия всегда true независимо от реального существования "C:/PO"
Stepan575 вне форума Ответить с цитированием
Старый 17.12.2010, 17:57   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

LPCWSTR aa=L"C:\\PO"; же надо
в виндовсе ж все не как у людей

Код:
bool isDirectoryExists(const char *filename)
{
	DWORD dwFileAttributes = GetFileAttributes(filename);
	if (dwFileAttributes == 0xFFFFFFFF)
		return false;
	return dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;
}
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 17.12.2010 в 18:00.
pproger вне форума Ответить с цитированием
Старый 17.12.2010, 18:09   #3
Stepan575
Пользователь
 
Регистрация: 25.11.2010
Сообщений: 18
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
LPCWSTR aa=L"C:\\PO"; же надо
в виндовсе ж все не как у людей
[/code]
думаете меня эти LPC..не бесят))
Visual studio 2010 не хочет компилить ваш код пишет
GetFileAttributesW: невозможно преобразовать параметр 1 из "const char *" в "LPCWSTR"
Stepan575 вне форума Ответить с цитированием
Старый 17.12.2010, 18:14   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2Stepan575
ну пофиксить самому нельзя чтоль?

Код:
bool isDirectoryExists(LPCWSTR filename)
{
	DWORD dwFileAttributes = GetFileAttributes(filename);
	if (dwFileAttributes == 0xFFFFFFFF)
		return false;
	return dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;
}
раз у тебя уникодный проект. да и я имел ввиду не LPC..., а двойной слеш надо ставить в виндах при указании пути
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 17.12.2010, 19:02   #5
Stepan575
Пользователь
 
Регистрация: 25.11.2010
Сообщений: 18
По умолчанию

Всё так и сделал уже)) LPC.. всё равно бесит)) Спасибо!
Stepan575 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверить существование поля в JavaScript Wicort JavaScript, Ajax 2 06.10.2009 18:13
проверка на существование папки D_E_N Общие вопросы Delphi 3 05.10.2009 22:48
Как проверить существование потока? John_chek Общие вопросы Delphi 3 17.01.2008 15:16
Проверка на существование Lonix Общие вопросы Delphi 2 19.03.2007 19:42