104 lines
3.0 KiB
C++
104 lines
3.0 KiB
C++
// messageboxtest.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
|
|
//
|
|
|
|
#include <iostream>
|
|
#include <Windows.h>
|
|
#include <map>
|
|
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )// 设置入口地址
|
|
using namespace std;
|
|
//u32_Data
|
|
enum class EventID : int {
|
|
//停止扫描
|
|
SCAN_STOP = -2,
|
|
//异常
|
|
HAVE_ERROR = -1,
|
|
//正常状态
|
|
NORMAL = 0,
|
|
//开盖
|
|
OPEN_COVER = 1,
|
|
// 无纸
|
|
NO_FEED = 2,
|
|
// 搓纸失败
|
|
FEED_IN_ERROR = 4,
|
|
// 卡纸
|
|
PAPER_JAM = 8,
|
|
// 检测到双张
|
|
DETECT_DOUBLE_FEED = 16,
|
|
// 检测到订书钉
|
|
DETECT_STAPLE = 32,
|
|
// 纸张倾斜
|
|
PAPER_SKEW = 64,
|
|
// 自动模式
|
|
AUTO_SCAN_MODE = 65,
|
|
// 手动模式
|
|
MANAUL_SCAN_MODE = 66,
|
|
// 计数模式
|
|
COUNT_MODE = 67,
|
|
// 硬件错误
|
|
HARDWARE_ERROR = 68,
|
|
// FPGA崩溃
|
|
FPGA_ERROR = 68,
|
|
// 开始
|
|
START_SCAN = 69,
|
|
//停止
|
|
STOP_SCAN = 70,
|
|
//有图
|
|
HAVE_IMAGE = 71,
|
|
// 更新扫描参数
|
|
UPDATE_SCAN_PARAMETER = 72,
|
|
// PC繁忙或出错
|
|
PC_SCAN_BUSY_or_ERROR = 73,
|
|
//USB 未连接
|
|
USB_DISCONNECTED = 200,
|
|
//未找到扫描仪
|
|
SCANNER_NOT_FOUND = 201,
|
|
//扫描仪被占用
|
|
SCANNER_IS_IN_USING = 202
|
|
};
|
|
|
|
static map<EventID, string> msgs = {
|
|
{EventID::OPEN_COVER,"扫描仪开盖!请关闭扫描仪上盖!"},
|
|
{EventID::NO_FEED,"无纸!请放置纸张!"},
|
|
{EventID::FEED_IN_ERROR,"搓纸失败!请整理纸张!"},
|
|
{EventID::PAPER_JAM,"卡纸!"},
|
|
{EventID::DETECT_DOUBLE_FEED,"双张"},
|
|
{EventID::DETECT_STAPLE,"检测到订书针!"},
|
|
{EventID::PAPER_SKEW,"纸张歪斜!请整理纸张!"},
|
|
{EventID::COUNT_MODE,"计数模式,请退出计数模式!"},
|
|
{EventID::HARDWARE_ERROR,"硬件异常!请重启扫描仪!"},
|
|
{EventID::USB_DISCONNECTED,"USB连接异常!"},
|
|
{EventID::SCANNER_NOT_FOUND,"未找到扫描仪!请检查电源或者USB连接线是否接通!"},
|
|
{EventID::SCANNER_IS_IN_USING,"设备已被其他程序占用,请关闭占用程序之后再重试!"}
|
|
};
|
|
|
|
int main(int argc, char** argv)
|
|
{
|
|
if (argc >= 2)
|
|
{
|
|
int key = atoi(argv[1]);
|
|
if (msgs.count((EventID)key))
|
|
{
|
|
string msg = msgs[(EventID)key];
|
|
MessageBox(NULL, msg.c_str(), TEXT("提示"), MB_OK| MB_ICONINFORMATION| MB_SYSTEMMODAL);
|
|
}
|
|
else
|
|
{
|
|
MessageBox(NULL, TEXT("未知异常"), TEXT("提示"), MB_OK| MB_ICONINFORMATION| MB_SYSTEMMODAL);
|
|
}
|
|
}
|
|
|
|
return 0;
|
|
//std::cout << "Hello World!\n";
|
|
}
|
|
|
|
// 运行程序: Ctrl + F5 或调试 >“开始执行(不调试)”菜单
|
|
// 调试程序: F5 或调试 >“开始调试”菜单
|
|
|
|
// 入门使用技巧:
|
|
// 1. 使用解决方案资源管理器窗口添加/管理文件
|
|
// 2. 使用团队资源管理器窗口连接到源代码管理
|
|
// 3. 使用输出窗口查看生成输出和其他消息
|
|
// 4. 使用错误列表窗口查看错误
|
|
// 5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目
|
|
// 6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件
|