⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rmadb.pas

📁 Delphi源码REAlRMSDK.rar
💻 PAS
📖 第 1 页 / 共 2 页
字号:

  end;
  {$EXTERNALSYM IRMAAuthenticationDBAccess}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAGUIDDBManagerResponse
 *
 *  Purpose:
 *
 *	A database user will implement this when it desires to
 *	manage player GUID data.
 *	This interface receives the results of IRMAGUIDDBManager
 *	methods
 *
 *  IRMAGUIDDBManagerResponse:
 *
 *	{00002A07-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAGUIDDBManagerResponse: TGUID = '{00002A07-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAGUIDDBManagerResponse}

type
  IRMAGUIDDBManagerResponse = interface (IUnknown)
  ['{00002A07-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAGUIDDBManagerResponse::SetGUIDForPrincipalIDDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAGUIDDBManager::SetGUIDForPrincipalID
     *
     *)

    function SetGUIDForPrincipalIDDone(ResultStatus: PN_RESULT;
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAGUIDDBManagerResponse::GetPrincipalIDFromGUIDDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAGUIDDBManager::GetGUIDForPrincipalID
     *
     *)

    function GetPrincipalIDFromGUIDDone(ResultStatus: PN_RESULT; pBufferGUID,
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAGUIDDBManagerResponse}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAGUIDDBManager
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	storage of player GUID data (for Player Authentication).
 *
 *  IRMAGUIDDBManager:
 *
 *	{00002A08-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAGUIDDBManager: TGUID = '{00002A08-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAGUIDDBManager}

type
  IRMAGUIDDBManager = interface (IUnknown)
  ['{00002A08-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAGUIDDBManager::SetGUIDForPrincipalID
     *	Purpose:
     *
     *	    Call this to associate a player GUID with a user.
     *
     *)

    function SetGUIDForPrincipalID(pGUIDDBManagerResponseNew: IRMAGUIDDBManagerResponse;
      pBufferPrincipalID, pBufferGUID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAGUIDDBManager::GetPrincipalIDFromGUID
     *	Purpose:
     *
     *	    Call this to get the associated player GUID from a user.
     *
     *)

    function GetPrincipalIDFromGUID(pGUIDDBManagerResponseNew: IRMAGUIDDBManagerResponse;
      pBufferGUID: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAGUIDDBManager}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAPPVDBManagerResponse
 *
 *  Purpose:
 *
 *	A database user will implement this when it desires to
 *	manage Pay-Per-View permission data.
 *	This interface receives the results of IRMAPPVDBManager
 *	methods
 *
 *  IRMAPPVDBManagerResponse:
 *
 *	{00002A09-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAPPVDBManagerResponse: TGUID = '{00002A09-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAPPVDBManagerResponse}

type
  IRMAPPVDBManagerResponse = interface (IUnknown)
  ['{00002A09-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManagerResponse::GetPermissionsDone
     *	Purpose:
     *	    
     *	    Reports the success or failure of 
     *	    IRMAPPVDBManager::GetPermissions
     *	    If successful then the Permissions are valid
     *
     *)

    function GetPermissionsDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer;
      pValuesPermissions: IRMAValues): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManagerResponse::SetPermissionsDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAPPVDBManager::SetPermissions
     *
     *)

    function SetPermissionsDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManagerResponse::RevokePermissionsDone
     *	Purpose:
     *	    
     *	    Reports the success or failure of 
     *	    IRMAPPVDBManager::RevokePermissions
     *
     *)

    function RevokePermissionsDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManagerResponse::RevokeAllPermissionsDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAPPVDBManager::RevokeAllPermissions
     *
     *)

    function RevokeAllPermissionsDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAPPVDBManagerResponse}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAPPVDBManager
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	storage of Pay-Per-View permission data.
 *
 *  IRMAPPVDBManager:
 *
 *	{00002A0A-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAPPVDBManager: TGUID = '{00002A0A-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAPPVDBManager}

type
  IRMAPPVDBManager = interface (IUnknown)
  ['{00002A0A-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManager::GetPermissions
     *	Purpose:
     *
     *	    Call this to find the PPV permissions for the specified URL
     *	    and user.
     *
     *)

    function GetPermissions(pPPVDBManagerResponseNew: IRMAPPVDBManagerResponse;
      pBufferPrincipalID, pBufferURL: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManager::SetPermissions
     *	Purpose:
     *
     *	    Call this to set the PPV permissions for the specified URL
     *	    and user.
     *
     *)

    function SetPermissions(pPPVDBManagerResponseNew: IRMAPPVDBManagerResponse;
      pBufferPrincipalID, pBufferURL: IRMABuffer; pValuesPermissions: IRMAValues): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManager::RevokePermissions
     *	Purpose:
     *
     *	    Call this to remove the PPV permissions for the specified URL
     *	    and user.
     *
     *)

    function RevokePermissions(pPPVDBManagerResponseNew: IRMAPPVDBManagerResponse;
      pBufferPrincipalID, pBufferURL: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManager::RevokeAllPermissions
     *	Purpose:
     *
     *	    Call this to remove the PPV permissions for all URL's
     *	    that this user has access too.
     *
     *)

    function RevokeAllPermissions(pPPVDBManagerResponseNew: IRMAPPVDBManagerResponse;
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAPPVDBManager::LogAccessAttempt
     *	Purpose:
     *
     *	    Call this to record the results of an attempt to access
     *	    protected content.
     *
     *)

    function LogAccessAttempt(pValuesAccess: IRMAValues): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAPPVDBManager}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMARedirectDBManagerResponse
 *
 *  Purpose:
 *
 *	A database user will implement this when it desires to
 *	manage the URL's to redirect.
 *	This interface receives the results of IRMARedirectDBManager
 *	methods
 *
 *  IRMARedirectDBManagerResponse:
 *
 *	{00002A0B-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMARedirectDBManagerResponse: TGUID = '{00002A0B-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMARedirectDBManagerResponse}

type
  IRMARedirectDBManagerResponse = interface (IUnknown)
  ['{00002A0B-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMARedirectDBManagerResponse::GetRedirectDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMARedirectDBManager::GetRedirect
     *	    If successful then the new URL is valid
     *
     *)

    function GetRedirectDone(ResultStatus: PN_RESULT; pBufferURL, pBufferNewURL: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMARedirectDBManagerResponse::AddRedirectDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMARedirectDBManager::AddRedirect
     *
     *)

    function AddRedirectDone(ResultStatus: PN_RESULT; pBufferURL: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMARedirectDBManagerResponse::RemoveRedirectDone
     *	Purpose:
     *	    
     *	    Reports the success or failure of 
     *	    IRMARedirectDBManager::RemoveRedirect
     *
     *)
     
    function RemoveRedirectDone(ResultStatus: PN_RESULT; pBufferURL: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMARedirectDBManagerResponse}
  
(****************************************************************************
 *
 *  Interface:
 *
 *	IRMARedirectDBManager
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	storage of URL's to redirect.
 *
 *  IRMARedirectDBManager:
 *
 *	{00002A0C-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMARedirectDBManager: TGUID = '{00002A0C-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMARedirectDBManager}

type
  IRMARedirectDBManager = interface (IUnknown)
  ['{00002A0C-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMARedirectDBManager::GetRedirect
     *	Purpose:
     *
     *	    Call this to retrieve the URL that the specified URL should
     *	    be redirected to.
     *
     *)

    function GetRedirect(pRedirectDBManagerResponseNew: IRMARedirectDBManagerResponse;
      pBufferURL: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMARedirectDBManager::AddRedirect
     *	Purpose:
     *
     *	    Call this to set the new URL that the specified URL should
     *	    be redirected to.
     *
     *)
    function AddRedirect(pRedirectDBManagerResponseNew: IRMARedirectDBManagerResponse;
      pBufferURL, pBufferNewURL: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMARedirectDBManager::RemoveRedirect
     *	Purpose:
     *
     *	    Call this to stop redirecting the specified URL.
     *
     *)

    function RemoveRedirect(pRedirectDBManagerResponseNew: IRMARedirectDBManagerResponse;
      pBufferURL: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMARedirectDBManager}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMARegistrationLogger
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	storage of player registration attempts.
 *
 *  IRMARegistrationLogger:
 *
 *	{00002A0E-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMARegistrationLogger: TGUID = '{00002A0E-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMARegistrationLogger}

type
  IRMARegistrationLogger = interface (IUnknown)
  ['{00002A0E-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMARegistrationLogger::LogRegistrationAttempt
     *	Purpose:
     *
     *	    Call this to record the results of an attempt to register
     *	    a player's GUID.
     *
     *)

    function LogRegistrationAttempt(pValuesRegistration: IRMAValues): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMARegistrationLogger}

implementation

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -