Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
ЕкатеринаН
1 / 1 / 0
Регистрация: 16.10.2012
Сообщений: 12
#1

GetVolumeInformation()

12.11.2012, 08:36. Просмотров 2005. Ответов 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))
Скажите, пожалуйста, что делать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2012, 08:36
Ответы с готовыми решениями:

Вызов функции GetVolumeInformation
Всем привет, хочу сделать что бы номер жеского диска шифровался, но выбивает...

GetVolumeInformation!
include <Windows.h> include <iostream> int main() { char Name; char...

GetVolumeInformation
Доброго времени суток.Имеется задача получить имя системного тома, использую...

Неправильная работа GetVolumeInformation
LPTSTR all_logical_discs, //все диски one_disc; TCHAR...

Трабл с GetVolumeInformation и NTFS
Собственно, сабж :) При использовании функции применительно к разделу с NTFS...

4
Toshkarik
1149 / 866 / 90
Регистрация: 03.08.2011
Сообщений: 2,404
Завершенные тесты: 1
12.11.2012, 08:53 #2
ЕкатеринаН, какой тип у массива s? Это первое. Второе - строка должна оканчиваться нулевым символом.
C++
1
s[ 3 ] = '\0';
0
ЕкатеринаН
1 / 1 / 0
Регистрация: 16.10.2012
Сообщений: 12
12.11.2012, 09:00  [ТС] #3
wchar_t s[3];

Добавлено через 1 минуту
ееее)))) спасибо большое!!!))) все отлично!
0
Toshkarik
1149 / 866 / 90
Регистрация: 03.08.2011
Сообщений: 2,404
Завершенные тесты: 1
12.11.2012, 09:03 #4
ЕкатеринаН, ну я думаю понятно, что нужно теперь создавать
C++
1
wchar_t s[ 4 ];
А вообще лучше чтоб этим занимался компилятор:
C++
1
wchar_t s[] = L"E:\\";
В данном случае ноль символ добавится автоматически, и размер массива будет равен 4.
0
ЕкатеринаН
1 / 1 / 0
Регистрация: 16.10.2012
Сообщений: 12
12.11.2012, 09:08  [ТС] #5
спасибо!
0
12.11.2012, 09:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2012, 09:08

GetVolumeInformation, тернарная операция и if
#include <windows.h> #include <iostream> int main(){ LPCWSTR lpFileName...

GetVolumeInformation выдает разный Serial
LPWSTR VolumeNameBuffer = 0; wchar_t FileSystemNameBuffer; LPDWORD sz =...

Что именно я узнаю о флэшке от GetVolumeInformation?
Хочу привязать свою программу к флэшке, с которой она запускается. Т.е. чтобы...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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