Interface IFsrmSetting (fsrm.h)

Usado para configurar o FSRM.

Para obter essa interface, chame a função CoCreateInstanceEx . Use CLSID_FsrmSetting como o identificador de classe e __uuidof(IFsrmSetting) como o identificador de interface.

Herança

A interface IFsrmSetting herda da interface IDispatch . O IFsrmSetting também tem esses tipos de membros:

Métodos

A interface IFsrmSetting tem esses métodos.

 
IFsrmSetting::EmailTest

Envie uma mensagem de email para o endereço de email especificado.
IFsrmSetting::get_AdminEmail

Recupera ou define o endereço de email do administrador. (Obter)
IFsrmSetting::get_DisableCommandLine

Recupera ou define um valor que determina se o FSRM impede a execução de ações de linha de comando. (Obter)
IFsrmSetting::get_EnableScreeningAudit

Recupera ou define um valor que determina se o FSRM mantém registros de auditoria das violações da tela do arquivo. (Obter)
IFsrmSetting::get_MailFrom

Recupera ou define o endereço de email padrão do qual as mensagens de email são enviadas. (Obter)
IFsrmSetting::get_SmtpServer

Recupera ou define o servidor SMTP que o FSRM usa para enviar emails. (Obter)
IFsrmSetting::GetActionRunLimitInterval

Obtém o tempo que uma ação que usa o intervalo de limite de execução global deve aguardar antes que a ação seja executada novamente.
IFsrmSetting::p ut_AdminEmail

Recupera ou define o endereço de email do administrador. (Put)
IFsrmSetting::p ut_DisableCommandLine

Recupera ou define um valor que determina se o FSRM impede a execução de ações de linha de comando. (Put)
IFsrmSetting::p ut_EnableScreeningAudit

Recupera ou define um valor que determina se o FSRM mantém registros de auditoria das violações da tela do arquivo. (Put)
IFsrmSetting::p ut_MailFrom

Recupera ou define o endereço de email padrão do qual as mensagens de email são enviadas. (Put)
IFsrmSetting::p ut_SmtpServer

Recupera ou define o servidor SMTP que o FSRM usa para enviar emails. (Put)
IFsrmSetting::SetActionRunLimitInterval

Define o tempo em que uma ação que usa o intervalo de limite de execução global deve aguardar antes que a ação seja executada novamente.

Comentários

Para criar esse objeto a partir de um script, use o identificador do programa, "Fsrm.FsrmSetting".

Exemplos

O exemplo a seguir mostra como recuperar as propriedades dessa interface.

#ifndef UNICODE
#define UNICODE
#endif


#include <windows.h>
#include <stdio.h>
#include <comutil.h>
#include <fsrm.h>       // FSRM base objects and collections
#include <fsrmtlb_i.c>  // contains CLSIDs


//
// Print the FSRM configuration settings.
//
void wmain(void)
{
  HRESULT hr = 0;
  IFsrmSetting* pSettings = NULL;
  BSTR bstr = NULL;
  VARIANT_BOOL boolVal = VARIANT_FALSE;
  long interval = 0;

  hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
  if (FAILED(hr))
  {
    wprintf(L"CoInitializeEx() failed, 0x%x.\n", hr);
    exit(1);
  }

  hr = CoCreateInstance(CLSID_FsrmSetting, 
                        NULL,
                        CLSCTX_LOCAL_SERVER,
                        __uuidof(IFsrmSetting),
                        reinterpret_cast<void**> (&pSettings));

  if (FAILED(hr))
  {
    wprintf(L"CoCreateInstance(FsrmSetting) failed, 0x%x.\n", hr);
    if (E_ACCESSDENIED == hr)
      wprintf(L"Access denied. You must run the client with an elevated token.\n");

    goto cleanup;
  }

  wprintf(L"Successfully created Setting object.\n");

  // Get the default email address for the administrator. If set, you 
  // can then use the [Admin Email] macro for any action or report 
  // email address.
  hr = pSettings->get_AdminEmail(&bstr);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->get_AdminEmail failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"AdminEmail: %s\n", bstr);
  SysFreeString(bstr);

  // Determines whether FSRM allows command actions to execute. The default
  // is execute command actions.
  hr = pSettings->get_DisableCommandLine(&boolVal);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->get_DisableCommandLine failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"DisableCommandLine: %s\n", (VARIANT_TRUE == boolVal) ? L"True" : L"False");

  // Determines whether FSRM keeps audit records for file screen IO violations.
  // The default is not to keep audit records.
  hr = pSettings->get_EnableScreeningAudit(&boolVal);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->get_EnableScreeningAudit failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"EnableScreeningAudit: %s\n", (VARIANT_TRUE == boolVal) ? L"True" : L"False");

  // The default address from which reports and email actions are sent.
  // If set, you do not have to set the IFsrmActionEmail::MailFrom property.
  // The default is FSRM@<localdomain>
  hr = pSettings->get_MailFrom(&bstr);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->get_MailFrom failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"MailFrom: %s\n", bstr);
  SysFreeString(bstr);

  // Get the SMTP server. If not set, email is not sent.
  hr = pSettings->get_SmtpServer(&bstr);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->get_SmtpServer failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"SmtpServer: %s\n", bstr);
  SysFreeString(bstr);

  // Each action can specify an interval to wait before executing the action again.
  // The default for each action is 60 minutes.
  wprintf(L"Default interval, in minutes, to wait between executing an action:\n");

  hr = pSettings->GetActionRunLimitInterval(FsrmActionType_EventLog, &interval);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->GetActionRunLimitInterval(FsrmActionType_EventLog) failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"\tEventLog interval: %ld\n", interval);

  hr = pSettings->GetActionRunLimitInterval(FsrmActionType_Email, &interval);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->GetActionRunLimitInterval(FsrmActionType_Email) failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"\tEmail interval: %ld\n", interval);

  hr = pSettings->GetActionRunLimitInterval(FsrmActionType_Command, &interval);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->GetActionRunLimitInterval(FsrmActionType_Command) failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"\tCommand interval: %ld\n", interval);

  hr = pSettings->GetActionRunLimitInterval(FsrmActionType_Report, &interval);
  if (FAILED(hr))
  {
    wprintf(L"pSettings->GetActionRunLimitInterval(FsrmActionType_Report) failed, 0x%x.\n", hr);
    goto cleanup;
  }

  wprintf(L"\tReport interval: %ld\n", interval);

  hr = pSettings->put_SmtpServer(_bstr_t(L"<FQDNOFSMTPSERVER>"));
  if (FAILED(hr))
  {
    wprintf(L"pSettings->put_SmtpServer failed, 0x%x.\n", hr);
    goto cleanup;
  }

cleanup:

  if (pSettings)
    pSettings->Release();

  CoUninitialize();
}

Requisitos

   
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2008
Plataforma de Destino Windows
Cabeçalho fsrm.h (incluem FsrmPipeline.h, FsrmQuota.h, FsrmReports.h, FsrmScreen.h, FsrmTlb.h)

Confira também

FSRM Interfaces

FsrmSetting