我一直在关注创建Vista/7打开文件对话框的几个指南/示例,现在由于一条错误消息说明main.cpp(189):错误C3861:'CDialogEventHandler_CreateInstance':标识符未找到,现在已经死了.
我在Google上找不到任何相关内容,只有一页有人重写了示例代码而不使用CDialogEventHandler类.
这是我的代码.CDialogEventHandler类和函数定义直接来自CommonFileDialogApp的Windows 7 SDK示例:
#include "resource.h"
#include <windows.h> // For common windows data types and function headers
#define STRICT_TYPED_ITEMIDS
#include <objbase.h> // For COM headers
#include <shobjidl.h> // for IFileDialogEvents and IFileDialogControlEvents
#include <shlwapi.h>
#include <knownfolders.h> // for KnownFolder APIs/datatypes/function headers
#include <propvarutil.h> // for PROPVAR-related functions
#include <propkey.h> // for the Property key APIs/datatypes
#include <propidl.h> // for the Property System APIs
#include <strsafe.h> // for StringCchPrintfW
#include <shtypes.h> // for COMDLG_FILTERSPEC
#include <new>
// Controls
#define CONTROL_GROUP …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用WHERE所需行ID上的条件从SQLite数据库查询特定行。但是,该查询未返回任何结果,并且导致我的记录器引发错误,指出存在语法错误。
这是查询:
Select * From Equipment Where ID = 2 and ID = 3 and ID = 4 and ID = 7 and ID = 11 and ID = 34
Run Code Online (Sandbox Code Playgroud)
这是我的日志中的语法错误:
Aug 17 2017 23:12:23 [Err]: Err002 - Query on Equipment could not be prepared: near "=": syntax error at File: c:\users\geowil\documents\visual studio 2015\projects\ov_pocs\universearc_poc\datasystem.cpp Line: 323.
Run Code Online (Sandbox Code Playgroud)
所以我航行到SQLFiddle尝试看看是否错过了一些东西。它显示相同的行为。在and有条件的情况下,它不会返回任何结果-但可以对单个ID或一系列ID运行查询。
我是在做错什么还是这是SQLite的限制?
更新:
产生了脑波。Where ID IN(1,3,4)在SQLFiddle上使用Works,所以现在我想重新调整问题的用途,以问问为什么这样做,但是我原来的查询却没有。