Esempio n. 1
0
void __cdecl InitHooks(LPVOID parameters, size_t)
{
  exceptionHandler = ::AddVectoredExceptionHandler(0, VEHandler);
#pragma message("bug: if the ve handler is called, the process breaks")

  InitLoggingInternal(false, true);

  usvfs::Parameters *params = reinterpret_cast<usvfs::Parameters *>(parameters);
  spdlog::get("usvfs")->set_level(ConvertLogLevel(params->logLevel));
  spdlog::get("hooks")->set_level(ConvertLogLevel(params->logLevel));

  spdlog::get("usvfs")
      ->debug("inithooks called {0} in process {1} (log level {2})",
              params->instanceName, ::GetCurrentProcessId(),
              static_cast<int>(params->logLevel));
  spdlog::get("usvfs")
      ->debug("process name: {}", winapi::ansi::getModuleFileName(nullptr));

  try {
    manager = new usvfs::HookManager(*params, dllModule);
/*
    std::ostringstream str;
    dumpTree(str, *manager->context()->redirectionTable().get());
    typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
    boost::char_separator<char> sep("\n");
    tokenizer tok(str.str(), sep);
    for (auto && s : tok)
      spdlog::get("usvfs")->debug("{}", s);
*/
    //context = manager->context();
  } catch (const std::exception &e) {
    spdlog::get("usvfs")->debug("failed to initialise hooks: {0}", e.what());
  }
}
void
CLogAdapter::log( const std::string& _section , 
                  MyGUI::LogLevel _level      , 
                  const std::string& _message ,
                  const char* _file           ,
                  int _line                   )
{
    CORE::CString newMessage( "MyGUI: " + _message );

    CORE::CLogManager::TLogMsgType msgType;
    CORE::Int32 logLevel;

    ConvertLogLevel( _level, msgType, logLevel );

    m_logManager->Log( msgType, logLevel, newMessage );
}