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

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

Войти
Регистрация
Восстановить пароль
 
myxasa
14 / 14 / 1
Регистрация: 31.05.2012
Сообщений: 210
Записей в блоге: 2
#1

Утечка памяти - C++

19.05.2013, 18:39. Просмотров 222. Ответов 0
Метки нет (Все метки)

Вот функция создания скрина.. в ней я так понял нет уничтожения чего то там)) буфера наверно... после вызова в ОЗУ процесса прибавляется ~2-3 мб.... как это исправить?

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
void make_screen(int id)
{
    IDirect3D9 *g_pD3D;
    HWND hWnd;
    
    IDirect3DDevice9 *g_pd3dDevice;
    IDirect3DSurface9 *pSurface;
    D3DDISPLAYMODE d3ddm;
    D3DPRESENT_PARAMETERS d3dpp;
 
    hWnd=GetConsoleWindow();
 
    g_pD3D = Direct3DCreate9(D3D_SDK_VERSION);
 
    g_pD3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &d3ddm);
    ZeroMemory(&d3dpp, sizeof(D3DPRESENT_PARAMETERS));
 
    d3dpp.Windowed = TRUE;
    d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
    d3dpp.BackBufferFormat = d3ddm.Format;
    d3dpp.BackBufferHeight = d3ddm.Height;
    d3dpp.BackBufferWidth = d3ddm.Width;
 
 
    g_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &g_pd3dDevice);
 
 
    
    g_pd3dDevice->CreateOffscreenPlainSurface(d3ddm.Width, d3ddm.Height,D3DFMT_A8R8G8B8, D3DPOOL_SCRATCH, &pSurface, NULL);
 
    g_pd3dDevice->GetFrontBufferData(0, pSurface);
    stringstream path;
    path<<"C:\\Users\\Desktop"<<id<<".jpg";
    wchar_t* pp = ctow(path.str().c_str(),strlen(path.str().c_str())); //в wchar
    D3DXSaveSurfaceToFile(pp,D3DXIFF_JPG,pSurface,NULL,NULL);
    pSurface->Release(); 
    
    
}
Добавлено через 1 час 51 минуту
надо было так еще:

C++
1
2
    g_pD3D->Release();
    g_pd3dDevice->Release();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2013, 18:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Утечка памяти (C++):

Утечка памяти - C++
Здравствуйте. Есть программа (разбитая на функции) постоянно работающая в цикле и выводящая информацию на консоль. И получается что она...

Утечка памяти - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &quot;ArrayOperation.h&quot; using namespace std; int main() { int...

Утечка памяти - C++
Не могу понять как избежать утечки памяти в своей программе... привожу кусок в одном из мест где на мой взгляд она происходит... Array...

Утечка памяти?! - C++
Джесс Либерти и Дэвид Хорват &quot;Освой самостоятельно С++ за 24 часа&quot;, вырезка из листинга 15.4 (стр 233): Строка 26 - Утечка памяти?...

Утечка памяти - C++
Подскажите, где здесь может возникать утечка памяти? Вроде везде, где можно - чищу... ///////////////////////////////////// // It's...

Утечка памяти - C++
Доброго времени суток! Столкнулся с проблемой утечки памяти! Будь у меня маленькая программка, выловил бы легко, но в 2000 строк кода все...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.05.2013, 18:39
Привет! Вот еще темы с ответами:

Утечка памяти - C++
Здравствуйте! Я пишу длинную арифметику для целых чисел. Ниже - функция произведения чисел X и Y. Вопрос: произойдет ли утечка памяти, и...

утечка памяти - C++
если запустить код char *pointer = NULL; for( int i = 0; i &lt; 10; i++ ) { pointer = new char; } delete pointer; , то есть...

Утечка памяти - C++
Привет! написал программму, и не могу разобраться где утекает память. помогите кто сможет. Задание #include &lt;iostream&gt; ...

Утечка памяти? - C++
В Лафоре такой код: #include &lt;iostream&gt; using namespace std; /////////////////////////////////////////////////////////// class...


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

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

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