![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Druidoff |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 16.2.2008 Репутация: нет Всего: нет |
Народ помогите как обернтуть в смартопоинер массив Структур, У мя то ошибки какието выкидывает, то пога при дебаге вылетает, и чете читал я документацию ни че не понял:
Вот так я делаю: boost::shared_array<WTS_PROCESS_INFO*> procinfo(new WTS_PROCESS_INFO*,WTSFreeMemory); Вроде пре дебаге на матерится потом: вызываю функция DWORD procCount; if (WTSEnumerateProcesses(WTS_CURRENT_SERVER_HANDLE,0, 1,procinfo.get(), &procCount)==0 ) { printf("\nErro enum sess %d",GetLastError()); } Все пока нормально!! А кода пытаюсь обратится уже к полям струтуры: например printf("%s"W2A( procinfo.operator [](1)->pProcessName)); то при дебаге Вылетает ошибка "Access violation reading location"!!! Обясните в че я не прав, Желательно на примере!!!! Пасиба!! |
|||
|
||||
| Fazil6 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
например так
|
|||
|
||||
| Druidoff |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 16.2.2008 Репутация: нет Всего: нет |
Извените за такую безграмотность я делаю так
const int WTS_PROCESS_INFO_SIZE = 100; // например такой нам нужен размер typedef boost::shared_array<WTS_PROCESS_INFO> WPIArray; Потом вызываю WPIArray procinfo(new WTS_PROCESS_INFO[WTS_PROCESS_INFO_SIZE],WTSFreeMemory); if (WTSEnumerateProcesses(WTS_CURRENT_SERVER_HANDLE,0, 1,procinfo.get(), &procCount)==0 ) { printf("\nErro enum sess %d",GetLastError()); } оно выдает мне ошибку не может преобразовать параметр 4 'WTS_PROCESS_INFOW *' to 'PWTS_PROCESS_INFOW *' я уже нече не понимаю: Сто пудово работает так: WTS_PROCESS_INFO *procinfo; if (WTSEnumerateProcesses(WTS_CURRENT_SERVER_HANDLE,0, 1,&procinfo, &procCount)==0 ) { printf("\nErro enum sess %d",GetLastError()); } И хотелось его обернуть в смарт-поинтер потому-что используются exception А как юз смартопоитер я че то воще запутался!! |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |