【发布时间】:2014-02-27 03:44:39
【问题描述】:
我正在使用 IndigoRose 的 Set-Up Factory 来构建我的安装程序。设置工厂在安装程序的脚本部分使用 lua 语言。现在,对于我的应用程序,一旦安装完成,如果操作系统是 Windows 7,我想运行一个禁用桌面分解的脚本。有没有办法可以在 lua 中访问 dwmapi.lib 来执行此操作。 是否有系统库函数可以访问桌面窗口管理器?
我做了一些谷歌搜索,发现以下 vbscript 代码..
Private Const DWM_EC_DISABLECOMPOSITION As Long = 0
Private Const DWM_EC_ENABLECOMPOSITION As Long = 1
Private Declare Function DwmEnableComposition Lib "dwmapi" (uCompositionAction As Long) As Long
Private Function SUCCEEDED(hr As Long) As Boolean
SUCCEEDED = (hr >= 0)
End Function
Private Function FAILED(hr As Long) As Boolean
FAILED = (hr < 0)
End Function
Private Sub Form_Load()
If SUCCEEDED(DwmEnableComposition(DWM_EC_DISABLECOMPOSITION)) Then
MsgBox "Vista Aero est Desactive"
Else
MsgBox "Vista Aero n'a pas pu etre Desactive"
End If
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
MsgBox Cancel
MsgBox UnloadMode
If SUCCEEDED(DwmEnableComposition(DWM_EC_ENABLECOMPOSITION)) Then
MsgBox "Vista Aero est Active"
Else
MsgBox "Vista Aero n'a pas pu etre active"
End If
End Sub
如何在 LUA 中做到这一点?
【问题讨论】: