Тема: Вывод имен палитр

Здравствуйтеу меня такая трабла :
Мне надо вывести список имен палитр из ToolPalettes .
Вот код которым я это реализую:
AcTcCatalogItem *catalog;
LPTSTR pString;
int pSize=255;
int count;
AcTcGetManager()->LoadCatalogs();
        count=AcTcGetManager()->GetStockToolCatalogCount();
        acutPrintf(_T("Кoл-во палитр:%s"),count);
        for(int i=0;i<count;i++)
        {
            catalog=AcTcGetManager()->GetCatalog(i);
            catalog->GetName(pString,pSize);   
            acutPrintf(_T("Name catalog:%s"),pString);
        }
он компилится но выдает Warning:uninitialized local variable 'pString' used
если pString объявить глобатьно warning пропадет но результат тот же самый :( приложение вылетает на строчке catalog->GetName(pString,pSize); - ошибка по адресу памяти где размещена переменная pString (тоесть в нее передаеться какаято лабуда).
Я реализовал тоже самое другим методом:
CAdUiPaletteSet *pPal;
CAdUiPalette *pTemp;
CString str;
int count;
count=AcTcGetManager()->GetStockToolCatalogCount();
        acutPrintf(_T("Кoл-во палитр:%s"),count);
        for(int i=0;i<count;i++)
        {
               pTemp=pPal->GetPalette(i);
           str=pTemp->GetName();
               acutPrintf(_T("Name catalog:%s"),str);
        }
.. Но тотже сценарий :( .Объект палитры передаеться верно.
Создание ToolPalettes реализовано методами описаными в Samples ObjectARX ,связь с Frameworks организована правильно.
Заранее спасибо .

Re: Вывод имен палитр

> SP
Кто память под строку выделять будет? Учи матчасть (т.е. C/C++).

Re: Вывод имен палитр

можно написать LPTSTR *pString=new LPTSTR[25]; но от этого ничего не меняеться присвоение не происходит , ощибку выдает в Стринговой библиотеке.

Re: Вывод имен палитр

> SP
Присоединяюсь к мнению Exhumer - учи матчасть или будь внимательней! wink

LPTSTR pString = new TCHAR[256];

и

acutPrintf(_T("Кoл-во палитр:%d"),count);

Re: Вывод имен палитр

насчет формата вывода тут опечатка %s -char %d - int  :)
LPTSTR pString = new TCHAR[256]; - это воистину правильно Спасибо .

Re: Вывод имен палитр

CAdUiPaletteSet *pPal;
CAdUiPalette *pTemp;
CString str;
int count;
count=AcTcGetManager()->GetStockToolCatalogCount();
acutPrintf(_T("Кoл-во палитр:%s"),count);
for(int i=0;i<count;i++)
{
pTemp=pPal->GetPalette(i);
str.Empty();
str.Append(pTemp->GetName());
acutPrintf(_T("Name catalog:%s"),str.GetBuffer());
str.ReleaseBuffer();
}

CString сам себе память выделяет