c++ - 任务计划程序 IID_ILogonTrigger 未定义
问题描述
我从 MSDN 中找到了一个示例代码,它在用户登录时触发 notepad.exe,
但是当我尝试使用编译程序时g++ task.cpp -o task.exe -lole32 -loleaut32 -luuid
在这个代码块中
ILogonTrigger *pLogonTrigger = NULL;
hr = pTrigger->QueryInterface(
IID_ILogonTrigger, (void**) &pLogonTrigger );
pTrigger->Release();
if( FAILED(hr) )
{
printf("\nQueryInterface call failed for ILogonTrigger: %x", hr );
pRootFolder->Release();
pTask->Release();
CoUninitialize();
return 1;
}
它说ILogonTrigger
并且IID_ILogonTrigger
没有定义。我检查了我的头文件并尝试与我从其他编译器获得的文件交换,它变得更糟。如何对其进行编码以便我可以获得相同的用户登录触发器?
错误:
task.cpp:208:5: error: 'ILogonTrigger' was not declared in this scope
208 | ILogonTrigger *pLogonTrigger = NULL;
| ^~~~~~~~~~~~~
task.cpp:208:20: error: 'pLogonTrigger' was not declared in this scope; did you mean 'pTrigger'?
208 | ILogonTrigger *pLogonTrigger = NULL;
| ^~~~~~~~~~~~~
| pTrigger
task.cpp:210:13: error: 'IID_ILogonTrigger' was not declared in this scope; did you mean 'IID_ITaskTrigger'?
210 | IID_ILogonTrigger, (void**) &pLogonTrigger );
| ^~~~~~~~~~~~~~~~~
| IID_ITaskTrigger
如果它可以帮助解决问题,这是我的头文件。
解决方案
推荐阅读
- mongodb - Mongo-Hadoop 连接器问题
- r - R:以秒为单位的变量“difftime”转换为以天为单位的变量“difftime”
- javascript - 使用 Facetwp 限制复选框
- spring-boot - 将 xlsx 文件转换为其他类型,以便可以将其存储在 git repo 中
- html - 在动态div中打印迭代器的值
- mysql - n="+".join(n) TypeError: can only join an iterable id 我不知道为什么会出现这个错误
- excel - 使用 Powershell 在 Excel 文件上设置 AIP 文件标签
- list - Flutter:拖放 ListView 但显示类似 GridView
- amazon-dynamodb - 由 Terraform 在 LocalStack 中创建的 DynamoDB 表在 NoSQL Workbench 中不可见
- javascript - 从另一个列表中选择动态加载列表