MIRAPI int Unload(void) { int i; for (i = SIZEOF(popupServices); i--; ) DestroyServiceFunction(popupServices[i].handle); SrmmMenu_Unload(); UnhookEvent(hOptionsInitialize); UnhookEvent(hModulesLoaded); UnhookEvent(hOkToExit); UnhookEvent(hEventStatusChanged); UnhookEvent(hIconsChanged); UnhookEvent(hFontsChanged); UnhookEvent(hTBLoaded); DestroyServiceFunction(hShowHistory); DestroyServiceFunction(hTogglePopup); DestroyServiceFunction(hGetStatus); DestroyServiceFunction(hSquareFad); DeleteObject(fonts.title); DeleteObject(fonts.clock); DeleteObject(fonts.text); DeleteObject(fonts.action); DeleteObject(fonts.actionHover); DeleteObject(hbmNoAvatar); FreeLibrary(hDwmapiDll); FreeLibrary(hUserDll); FreeLibrary(hMsimgDll); // FreeLibrary(hKernelDll); FreeLibrary(hGdiDll); if(PopUpOptions.SkinPack) mir_free(PopUpOptions.SkinPack); mir_free(PopUpOptions.Effect); OptAdv_UnregisterVfx(); UnloadPopupThread(); UnloadPopupWnd2(); PopupHistoryUnload(); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupWnd2),hInst); UnregisterClassW(L"PopupEditBox",hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupMenuHostWnd),hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupThreadManagerWnd),hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupPreviewBoxWndclass),hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupPlusDlgBox),hInst); UnloadGDIPlus(); UnloadActions(); CloseHandle(hMainThread); return 0; }
MIRAPI int Unload(void) { DeleteObject(fonts.title); DeleteObject(fonts.clock); DeleteObject(fonts.text); DeleteObject(fonts.action); DeleteObject(fonts.actionHover); DeleteObject(hbmNoAvatar); FreeLibrary(hDwmapiDll); FreeLibrary(hUserDll); FreeLibrary(hMsimgDll); FreeLibrary(hGdiDll); DestroyHookableEvent(hEventNotify); mir_free(PopupOptions.SkinPack); mir_free(PopupOptions.Effect); OptAdv_UnregisterVfx(); UnloadPopupThread(); UnloadPopupWnd2(); PopupHistoryUnload(); SrmmMenu_Unload(); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupWnd2),hInst); UnregisterClassW(L"PopupEditBox",hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupMenuHostWnd),hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupThreadManagerWnd),hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupPreviewBoxWndclass),hInst); UnregisterClass (MAKEINTATOM(g_wndClass.cPopupPlusDlgBox),hInst); UnloadGDIPlus(); UnloadActions(); UnloadTreeData(); CloseHandle(hMainThread); return 0; }
static int OnShutdown(WPARAM, LPARAM) { UnloadPopupThread(); UnloadPopupWnd2(); return 0; }