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

Открытие хранилища StgOpenStorage() и чтение данных из потока Read() - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вопрос по циклам и условиям http://www.cyberforum.ru/cpp-beginners/thread387335.html
while(i <= el) { if(mas < A && mas < min) min = mas; i++; } есть такой цикл. поиск минимального при определенном условии. преподователь орет, что надо объеденить условие цикла и...
C++ Вывести на экран элемент, если он является наименьшим в своей строке и одновременно наибольшим в своем столбце или наоборот. Для матрицы размером NxM вывести на экран все седловые точки. Элемент матрицы называется седловой точкой, если он является наименьшим в своей строке и одновременно наибольшим в своем столбце или... http://www.cyberforum.ru/cpp-beginners/thread387327.html
Как удалить лидирующие нули? C++
Программа разворачивает числа, нужно сделать так, что бы лидирующие нули после переворота убирались, не знаю как :( : #include <iostream> #include <cstring> using namespace std; int main() {...
C++ Удвоить положительные четные элементы
Я написал программу с помощью массивов, мне надо эту же программу написать с помощью функции Заранее спасибо. #include <iostream> #include <conio.h> #include <math.h> using namespace std; ...
C++ Даны 2 множества точек http://www.cyberforum.ru/cpp-beginners/thread387279.html
Доброй вечер, товарищи! Подскажите идею для решения задачи. Даны два множества точек на плоскости. Выбрать три различные точки первого множества так, чтобы круг, ограниченный окружностью,...
C++ Нужна программа, описание внутри. Нужна программа, которая сворачивалась бы в трей и при нажатии определенной комбинации клавиш в буфер обмена вставляла определенный текст(типо вырезать и вставить). подробнее

Показать сообщение отдельно
stream
0 / 0 / 0
Регистрация: 19.11.2011
Сообщений: 26

Открытие хранилища StgOpenStorage() и чтение данных из потока Read() - C++

19.11.2011, 20:56. Просмотров 565. Ответов 0
Метки (Все метки)

Возникла следующая проблема: при чтении потока stream всё нормально, если строки объявлены в виде статических массивов. А если они объявлены динамически, то работает не корректно. Помогите! Сам не знаю в чем причина. Вот кусок исходника
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
HRESULT hresStream;
LPSTREAM stream = NULL;
//Открытие iStream
hresStream = storage->OpenStream(L"Main MetaData Stream", NULL,STGM_READ|STGM_DIRECT|STGM_SHARE_EXCLUSIVE,0, &stream);
if (!FAILED(hresStream))
{
    cout << "ok open stream" << endl;
}
else cout << "error open stream" << endl;
//Читаем данный из потока
ULONG cb;
 
/*----------------------------Читаем иформацию о IStream-----------------------------------*/
        STATSTG StreamInfo;
        if(stream->Stat(&StreamInfo,STATFLAG_DEFAULT) == S_OK)
                         cout << "ok info read" << endl;
               else
                         cout << "error info read" << endl;
 
 
 
//StreamInfo.cbSize.QuadPart - размер читаемого потока в байтах
 
 
/*------------------------------------------------------------------------------------------*/
 
 
/*------------------Рабочая версия в статике-----------------------------------------------*/
OLECHAR buffer[18000];
hresStream = stream->Read(&buffer,StreamInfo.cbSize.QuadPart, &cb);
char buf[18000];
wcstombs((CHAR*)&buf,(OLECHAR*)&buffer,sizeof(buf));
/*------------------------------------------------------------------------------------------*/
 
/*-----Версия с динамически распределением памяти НЕрабочая---------------------------*/
    /*OLECHAR* buffer = new OLECHAR[StreamInfo.cbSize.QuadPart];
    hresStream = stream->Read(buffer,StreamInfo.cbSize.QuadPart, &cb);
    char* buf = new char[StreamInfo.cbSize.QuadPart];
    wcstombs((CHAR*)buf,(OLECHAR*)buffer,StreamInfo.cbSize.QuadPart);
/*------------------------------------------------------------------------------------------*/
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru