home *** CD-ROM | disk | FTP | other *** search
- // dllmain.cpp
- //
- // (C) Copyright 1995 - 1999 Microsoft Corporation. All rights reserved.
- //
-
- #include "project.hpp"
- #pragma hdrstop
-
- #include <stdio.h>
-
- #include "jviewprf.hpp"
- #include "resource.h"
-
- // main.cpp
- extern BOOL g_fErrorMessageDisplayed;
-
-
- //------------------------------------------------------------------------
-
-
- HINSTANCE g_hInst = NULL;
-
-
- BOOL WINAPI DllMain (HINSTANCE hInst, ULONG reason, LPVOID reserved)
- {
- g_hInst = hInst;
-
- switch (reason)
- {
- case DLL_PROCESS_ATTACH:
- DisableThreadLibraryCalls(hInst);
- break;
-
- case DLL_PROCESS_DETACH:
- if (g_EventMonitor)
- g_EventMonitor->ShutdownWorker(FALSE);
- break;
- }
-
- return TRUE;
- }
-
-
- //------------------------------------------------------------------------
-
-
- IJVIEWProfiler * __stdcall JVIEWPRF_CreateProfilerProcName ()
- {
- return new EventMonitor();
- }
-
-
- //------------------------------------------------------------------------
-
-
- VOID DisplayMessage (JVIEWDisplayClass type, UINT id, va_list va)
- {
- CHAR fmt[1024];
-
- if (g_pJVIEW->LoadResourceString(g_hInst, id, fmt, sizeof(fmt)))
- {
- CHAR buf[1024];
-
- g_pJVIEW->vsnprintf(buf, sizeof(buf), fmt, va);
-
- if (g_pJVIEW->DisplayString(type, buf) && type == JDC_ERROR)
- g_fErrorMessageDisplayed = TRUE;
- }
- }
-
-
- VOID WriteOutputFloat (DWORD flags, double value)
- {
- CHAR buf[128];
-
- sprintf(buf, "%g", value);
-
- WriteOutputEx(flags, NULL, buf);
- }
-
-
- VOID WriteOutputFixedFloat (DWORD flags, double value, int precision)
- {
- CHAR fmt[] = "%.0f";
- CHAR buf[128];
-
- fmt[2] += precision;
-
- sprintf(buf, fmt, value);
-
- WriteOutputEx(flags, NULL, buf);
- }
-
-
- VOID WriteOutputColumnUINT64 (DWORD flags, ULONG ColumnWidth, unsigned __int64 value)
- {
- CHAR buf[128];
-
- sprintf(buf, "%I64u", value);
-
- WriteOutputColumnString(flags, ColumnWidth, buf);
- }
-
-
- //------------------------------------------------------------------------
-
-
- VOID DisplayUsage ()
- {
- CHAR buf[2048];
-
- for (unsigned i = IDS_USAGE; ; i++)
- {
- if (!g_pJVIEW->LoadResourceString(g_hInst, i, buf, sizeof(buf)))
- break;
-
- if (buf[0] == '~')
- break;
-
- if (FAILED(g_pJVIEW->DisplayString(JDC_INFORMATION, buf)))
- break;
- }
- }
-
-