Использую последнюю версию 6.2
mmo1.Clear;
mmo1.Lines.Add('Инициализация Guardant API...');
// Инициализация Guardant API
nRet := GrdStartupEx(GrdFMR_Remote, nil, nil);
ErrorHandling(nil,nRet); { Проверка наличия ошибок }
mmo1.Lines.Add('Создаем хэндл контейнера Guardant API');
// Создаем хэндл контейнера Guardant API
hGrd := GrdCreateHandle(nil, GrdCHM_SingleThread, nil);
// Шифруем пароли доступа для демонстрационных ключей
dwPublic:= $???-CryptPU; //вместо ??? код =)
dwPrivRD:= $???-CryptRD; //вместо ??? код =)
mmo1.Lines.Add('Устанавливаем пароли доступа к ключу');
// Устанавливаем пароли доступа к ключу (перед этим расшифровав их)
nRet:= GrdSetAccessCodes(hGrd, dwPublic + CryptPU, dwPrivRD + CryptRD, 0, 0 );
ErrorHandling(hGrd,nRet);
Keys := 0;
mmo1.Lines.Add('Поиск ключа и отображение о нем информации');
// Поиск всех ключей и отображение в отладочном режиме их ID
nRet:= GrdFind(hGrd, GrdF_First, @dwID, @GrdFindInfo);
if ( nRet = GrdE_OK ) then
begin
Inc(Keys);
mmo1.Lines.Add('Подробная информация о первом найденном ключе: ');
mmo1.Lines.Add('ID ключа = ' + IntToStr(GrdFindInfo.dwID));
mmo1.Lines.Add('Публичный код = 0x'+ IntToHex(GrdFindInfo.dwPublicCode,8) );
mmo1.Lines.Add('Версия прошивки = ' + IntToStr(GrdFindInfo.byHrwVersion) );
mmo1.Lines.Add('Ресурс сетевого ключа (макс) = ' + IntToStr(GrdFindInfo.byMaxNetRes) );
mmo1.Lines.Add('Тип ключа = ' + IntToHex(GrdFindInfo.wType,4) );
mmo1.Lines.Add('Номер программы = ' + IntToStr(GrdFindInfo.byNProg) );
mmo1.Lines.Add('Версия программы = ' + IntToStr(GrdFindInfo.byVer) );
mmo1.Lines.Add('Серийный номер = ' + IntToStr(GrdFindInfo.wSN) );
mmo1.Lines.Add('Битовая маска = ' + IntToStr( GrdFindInfo.wMask));
mmo1.Lines.Add('Счетчик = ' + IntToStr( GrdFindInfo.wGP));
mmo1.Lines.Add('Реальный сетевой ресурс = ' + IntToStr( GrdFindInfo.wRealNetRes));
mmo1.Lines.Add('Индекс = ' + IntToStr( GrdFindInfo.dwIndex));
mmo1.Lines.Add('--------------------------------------------------------');
end else begin
mmo1.Lines.Add('Ключи не найдены');
btn2.Click;
end;
mmo1.Lines.Add('Регистрация клиента на сервере');
nRet := GrdLogin(hGrd, $FFFFFFFF, GrdLM_PerStation);
ErrorHandling(hGrd, nRet); //ТУТ nRET = 12
mmo1.Lines.Add('--------------------------------------------------------');
К сожалению прикрепить изображение не получается, пишет что большой файл, хотя размер 44 кбайта