Как получить значение, возвращаемое GrdRead в С++

Добрый день.
Возникла необходимость переписать работающий модуль защиты из Delphi на C++.

Инициализация ключа, поиск и логин на ключ проходят без проблем.
GrdCheck тоже отрабатывает.

Запнулся на функции GrdRead, которая возвращает ссылку на прочитанную строку из 6 символов.
Как прочитать саму строку ? Помогите.

Вот кусок кода:

        nRet= GrdCheck(hGrd);
            if (nRet == GrdE_OK)
            {
              nRet=GrdSetWorkMode(hGrd, GrdWM_UAM, GrdWMFM_DriverAuto);
                         //чтение данных из ключа
              bAddr = 1278;
                          bLng = 6;

                          nRet= GrdRead(hGrd, bAddr, bLng, &qdataLicS, NULL);

                     if (nRet == GrdE_OK)
              {
                        sLic=qdataLicS;

Последняя строка ничего не дает.
Как получить значение из ссылки &qdataLicS ???

Re: Как получить значение, возвращаемое GrdRead в С++

Здравствуйте.

plohushko пишет:

Последняя строка ничего не дает.
Как получить значение из ссылки &qdataLicS ???

В нормальном случае функция GrdRead считывает данные из областей памяти ключа, на которые не наложен запрет на чтение и помещает их в буфер для считанных данных (параметр pData).
Если после вызова GrdRead выходной буфер не содержит считанных данных, значит, была попытка считать данные из области памяти ключа, на которую наложен запрет на чтение, или за пределами адресуемой памяти ключа.
Таким образом, необходимо проверить параметры dwAddr и dwLng.