1

以下に、Windows 7 でテーマを有効/無効にする小さなコードを示します。これは、Visual Studio 2010 でコンパイルした Win32 コンソール アプリです。

実行時に、テーマを無効にするのに適しています。ただし、コードがハングして終了しないため、有効化は機能しません。

プラグマ オプション行にコメントを付けることで、ハングを修正できることがわかりました。コードは正しく終了しますが、テーマはまだ有効になっていません。

#include <windows.h>
#include <Uxtheme.h>
#include <stdio.h>

//#pragma comment(linker, "/entry:main")

// Main application function
int main(void) {

    if (!IsThemeActive()) 
        EnableTheming(TRUE);
    else
        EnableTheming(FALSE);

    printf("Last error: %d", GetLastError());

    SendNotifyMessage(HWND_BROADCAST, WM_SETTINGCHANGE, NULL, (LPARAM)TEXT("VisualEffects"));

}

質問:

  1. 一般的にテーマを有効にする方法は? 何か不足していますか?

  2. カスタム エントリ ポイントを作成するプラグマ オプションで動作させるにはどうすればよいですか? 非常に小さな実行可能サイズが必要です。

どうもありがとうございました

4

0 に答える 0