Guardant API на с++

Здравствуйте. При написании курсового проекта не могу разобраться со встраиваемой защитой. Подойдет самый простой вариант защиты. Помогите с кодом на С++. Заранее спасибо.

Re: Guardant API на с++

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

n777ikos пишет:

Здравствуйте. При написании курсового проекта не могу разобраться со встраиваемой защитой. Подойдет самый простой вариант защиты. Помогите с кодом на С++. Заранее спасибо.

Проще всего защитить готовый исполняемый файл приложения специальными утилитами: автозащита или Guardant Armor (beta), комбинировать их нельзя.

Для Guardant API в составе SDK есть примеры и документация на нашем портале.

Ключи, наверное, подойдут и софтверные Guardant SP.

Re: Guardant API на с++

Нужна именно встраиваемая защита. Воспользовался конструктором программных блоков в вашем пакете, он выдал:
#include "grdapi.h"

void GeneratedFunction()
{
  try
  {
    DWORD GrdStartupAndFindFirstDongle_dwRemoteMode( 1 );
    DWORD GrdStartupAndFindFirstDongle_dwMode( 1 );

    int int_GrdStartup_0 = GrdStartup( GrdStartupAndFindFirstDongle_dwRemoteMode );
    if( GrdE_AlreadyInitialized != int_GrdStartup_0 )
      if( GrdE_OK != int_GrdStartup_0 )
        throw static_cast<int>( int_GrdStartup_0 );

    HANDLE hGrd;

    hGrd = GrdCreateHandle( NULL, GrdCHM_MultiThread, NULL );
    DWORD dwId( 0 );
    DWORD* pdwId( &dwId );

    int int_GrdFind_1 = GrdFind( hGrd, GrdF_First, pdwId, NULL );
    if( GrdE_OK != int_GrdFind_1 )
      throw static_cast<int>( int_GrdFind_1 );

  }
  catch( int e )
  {
    // your's code here
  }
}


Но при компиляции все API функции обозначаются как невыполнимые.

Re: Guardant API на с++

n777ikos пишет:

Но при компиляции все API функции обозначаются как невыполнимые.

А вы к ним в своем коде обращаетесь?