deskflow/src/lib/arch/win32/XArchWindows.h

51 lines
933 B
C
Raw Normal View History

2012-06-10 16:50:54 +00:00
/*
* Deskflow -- mouse and keyboard sharing utility
* SPDX-FileCopyrightText: (C) 2012 - 2016 Symless Ltd.
* SPDX-FileCopyrightText: (C) 2002 Chris Schoeneman
* SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
2012-06-10 16:50:54 +00:00
*/
#pragma once
2012-06-10 16:50:54 +00:00
#include "arch/XArch.h"
2012-06-10 16:50:54 +00:00
#define WIN32_LEAN_AND_MEAN
#include <Windows.h>
2012-06-10 16:50:54 +00:00
//! Lazy error message string evaluation for windows
class XArchEvalWindows : public XArchEval
{
2012-06-10 16:50:54 +00:00
public:
XArchEvalWindows() : m_error(GetLastError())
{
}
XArchEvalWindows(DWORD error) : m_error(error)
{
}
virtual ~XArchEvalWindows()
{
}
2012-06-10 16:50:54 +00:00
virtual std::string eval() const throw();
2012-06-10 16:50:54 +00:00
private:
DWORD m_error;
2012-06-10 16:50:54 +00:00
};
//! Lazy error message string evaluation for winsock
class XArchEvalWinsock : public XArchEval
{
2012-06-10 16:50:54 +00:00
public:
XArchEvalWinsock(int error) : m_error(error)
{
}
virtual ~XArchEvalWinsock()
{
}
2012-06-10 16:50:54 +00:00
virtual std::string eval() const throw();
2012-06-10 16:50:54 +00:00
private:
int m_error;
2012-06-10 16:50:54 +00:00
};