Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
ЕкатеринаН
1 / 1 / 0
Регистрация: 16.10.2012
Сообщений: 12
#1

GetVolumeInformation() - C++

12.11.2012, 08:36. Просмотров 1425. Ответов 4
Метки нет (Все метки)

я использую функцию GetVolumeInformation(), чтоб определить файловую систему диска Е:.
почему, если я использую константу в качестве пути, она работает
C++
1
2
wchar_t FileSystemNameBuffer[100];
GetVolumeInformation(L"E:\\", NULL, NULL, NULL, NULL, NULL, FileSystemNameBuffer, 100);
а если использую переменную с тем же значением, она не работает?
C++
1
2
3
4
5
6
s[0] = 'E';
s[1] = ':';
s[2] = '\\';
wchar_t *str = s;
wchar_t FileSystemNameBuffer[100];
if (GetVolumeInformation(/*L"E:\\"*/str, NULL, NULL, NULL, NULL, NULL, FileSystemNameBuffer, 100))
Скажите, пожалуйста, что делать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2012, 08:36     GetVolumeInformation()
Посмотрите здесь:

Visual C++ Неправильная работа GetVolumeInformation
Трабл с GetVolumeInformation и NTFS Delphi
C++ WinAPI GetVolumeInformation
C++ WinAPI Не получается вывести результат функции GetVolumeInformation
C++ WinAPI GetVolumeInformation выдает разный Serial
Что именно я узнаю о флэшке от GetVolumeInformation? C++ Builder
Функция GetVolumeInformation() не выводит результатов. Исправить код C++ WinAPI
C++ WinAPI GetVolumeInformation, тернарная операция и if
C# Получение серийного номера диска с помощью GetVolumeInformation

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
12.11.2012, 08:53     GetVolumeInformation() #2
ЕкатеринаН, какой тип у массива s? Это первое. Второе - строка должна оканчиваться нулевым символом.
C++
1
s[ 3 ] = '\0';
ЕкатеринаН
1 / 1 / 0
Регистрация: 16.10.2012
Сообщений: 12
12.11.2012, 09:00  [ТС]     GetVolumeInformation() #3
wchar_t s[3];

Добавлено через 1 минуту
ееее)))) спасибо большое!!!))) все отлично!
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
12.11.2012, 09:03     GetVolumeInformation() #4
ЕкатеринаН, ну я думаю понятно, что нужно теперь создавать
C++
1
wchar_t s[ 4 ];
А вообще лучше чтоб этим занимался компилятор:
C++
1
wchar_t s[] = L"E:\\";
В данном случае ноль символ добавится автоматически, и размер массива будет равен 4.
ЕкатеринаН
1 / 1 / 0
Регистрация: 16.10.2012
Сообщений: 12
12.11.2012, 09:08  [ТС]     GetVolumeInformation() #5
спасибо!
Yandex
Объявления
12.11.2012, 09:08     GetVolumeInformation()
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru