如何在Windows上以编程方式触发Flip 3D?

时间:2011-01-26 22:04:58

标签: windows

如何在Windows Vista和7上以编程方式触发Flip 3D?

是否有这样的API,如果有,它的名称是什么,我在哪里可以找到相关的功能? (我需要一个特定的答案,例如指向实际功能的网络链接,而不是像“哦,它在DirectX中”这样的通用。)

在一个相关的节点上,我有一个Logitech鼠标,它有一个“文档翻转”按钮,可以调用Flip 3D(然后我可以按向上/向下键来翻阅结果。)我很好奇他们是否正在使用官方Windows API或者如果有一些低级别的hackery正在进行中。

1 个答案:

答案 0 :(得分:5)

您需要从dwmapi

运行一项功能

可悲的是,只有ord-number 105

没有适当的功能名称

您可以通过从Run-dialog或cmd执行%WinDir%\System32\rundll32.exe dwmapi #105来尝试此操作。

修改 香港专业教育学院发现Windows的API GetProcAddress函数接受ord-numbers(105)作为第二个参数以及正确的名称

  

lpProcName [in]
  函数或变量名称,或函数的序数值。如果此参数是序数值,则它必须在低位字中;高阶词必须为零。

所以请使用此代码

typedef vois (__cdecl *FlipProc)();
HINSTANCE hDwmApi = LoadLibrary(TEXT("dwmapi.dll"));
FlipProcAdd = (FlipProc) GetProcAddress(hDwmApi, (LPCSTR)105);
(FlipProcAdd)();