首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置wcm_global_property_minimize_policy时WINAPI WcmSetProperty失败

设置wcm_global_property_minimize_policy时WINAPI WcmSetProperty失败
EN

Stack Overflow用户
提问于 2014-02-06 01:27:32
回答 1查看 144关注 0票数 0

我正在尝试通过WcmSetProperty接口设置wcm_global_property_minimize_policy。由于某些原因,调用返回错误87 (无效参数)。奇怪的是,我可以通过WcmQueryProperty成功地查询此策略。我试图在Windows8SDK中找到示例代码,但没有更改全局属性的示例。

有人能告诉我在下面的代码中我做错了什么吗?

代码语言:javascript
复制
void __cdecl main()
{
 DWORD dwRetCode = NO_ERROR;
 DWORD dwSize = 0;
 WCM_POLICY_VALUE policyVal; 
 WCM_POLICY_VALUE *outVal;

 /* Disable Minimize Connections */
 policyVal.fIsGroupPolicy = false;
 policyVal.fValue = false;

 dwSize = sizeof(policyVal);

 wprintf(L"Disabling global property - minimize connections... dwSize: %u\n", dwSize);

 dwRetCode = WcmSetProperty(NULL, NULL, wcm_global_property_minimize_policy, NULL, dwSize, (PBYTE)&policyVal);

 if (dwRetCode == ERROR_SUCCESS) {
  wprintf(L"Disable global property minimize connections is success\n");
 }
 else {
  wprintf(L"Disable global property minimize connections failed\n");
  wprintf(L"Error code: %u\n", dwRetCode);
 }

 dwRetCode = WcmQueryProperty(NULL, NULL, wcm_global_property_minimize_policy, NULL, &dwSize, (PBYTE *)&outVal);

 if ((dwRetCode == ERROR_SUCCESS) /*&& (p2Data != NULL)*/) {
  wprintf(L"Global property minimize policy is: %d.%d with size %d\n", outVal->fIsGroupPolicy, outVal->fValue, dwSize);
 }
 else {
  wprintf(L"Error in querying property - minimize policy \n");
  wprintf(L"Error code: %u\n", dwRetCode);
 }
}

另外,如果我通过WcmSetProperty ()更改wcm_global_property_minimize_policy,是否需要重新启动系统才能使更改的设置生效?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-03-11 02:49:27

以下是一个MSDN论坛的回应:

“在调用WcmSetProperty时,文档指定存储在pbData中的数据类型应为WCM_POLICY_VALUE。

这似乎是文档中的一个错误。要设置wcm_global_property_minimize_policy,请将pbData设置为类型BOOL,调用应该会成功。“

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21584214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档