fra*_*r81 3 windows winapi inno-setup
当我通过Inno Setup构建.exe时,我运行.exe,当我右键单击我的应用程序的任务栏按钮时,我只能看到一个项目"关闭窗口".当我通过Visual Studio或Windows中的任何其他程序构建exe时,当我单击鼠标右键时,我可以看到有3个项目.
我的问题是Inno Setup如何做到这一点,我如何以编程方式实现它?
发件人:
如何阻止用户将我的程序固定到任务栏?
https://blogs.msdn.microsoft.com/oldnewthing/20110601-00/?p=10523
使用System.AppUserModel.PreventPinning直接在程序中:
#include <Windows.h>
#include <shellapi.h>
#include <propsys.h>
#include <propkey.h>
HRESULT MarkWindowAsUnpinnable(HWND hwnd)
{
IPropertyStore *pps;
HRESULT hr = SHGetPropertyStoreForWindow(hwnd, IID_PPV_ARGS(&pps));
if(SUCCEEDED(hr))
{
PROPVARIANT var;
var.vt = VT_BOOL;
var.boolVal = VARIANT_TRUE;
hr = pps->SetValue(PKEY_AppUserModel_PreventPinning, var);
pps->Release();
}
return hr;
}
...
case WM_CREATE:
MarkWindowAsUnpinnable(hwnd);
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
290 次 |
| 最近记录: |