Commit b11261eb authored by captainwong's avatar captainwong

refactoring

parent 57eae3e1
This diff is collapsed.
This diff is collapsed.
// Copyright 2006 Nemanja Trifunovic
/*
Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:
The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
*/
#ifndef UTF8_FOR_CPP_UNCHECKED_H_2675DCD0_9480_4c0c_B92A_CC14C027B731
#define UTF8_FOR_CPP_UNCHECKED_H_2675DCD0_9480_4c0c_B92A_CC14C027B731
#include "core.h"
namespace utf8
{
namespace unchecked
{
template <typename octet_iterator>
octet_iterator append(uint32_t cp, octet_iterator result)
{
if (cp < 0x80) // one octet
*(result++) = static_cast<uint8_t>(cp);
else if (cp < 0x800) { // two octets
*(result++) = static_cast<uint8_t>((cp >> 6) | 0xc0);
*(result++) = static_cast<uint8_t>((cp & 0x3f) | 0x80);
}
else if (cp < 0x10000) { // three octets
*(result++) = static_cast<uint8_t>((cp >> 12) | 0xe0);
*(result++) = static_cast<uint8_t>(((cp >> 6) & 0x3f) | 0x80);
*(result++) = static_cast<uint8_t>((cp & 0x3f) | 0x80);
}
else { // four octets
*(result++) = static_cast<uint8_t>((cp >> 18) | 0xf0);
*(result++) = static_cast<uint8_t>(((cp >> 12) & 0x3f)| 0x80);
*(result++) = static_cast<uint8_t>(((cp >> 6) & 0x3f) | 0x80);
*(result++) = static_cast<uint8_t>((cp & 0x3f) | 0x80);
}
return result;
}
template <typename octet_iterator>
uint32_t next(octet_iterator& it)
{
uint32_t cp = utf8::internal::mask8(*it);
typename std::iterator_traits<octet_iterator>::difference_type length = utf8::internal::sequence_length(it);
switch (length) {
case 1:
break;
case 2:
it++;
cp = ((cp << 6) & 0x7ff) + ((*it) & 0x3f);
break;
case 3:
++it;
cp = ((cp << 12) & 0xffff) + ((utf8::internal::mask8(*it) << 6) & 0xfff);
++it;
cp += (*it) & 0x3f;
break;
case 4:
++it;
cp = ((cp << 18) & 0x1fffff) + ((utf8::internal::mask8(*it) << 12) & 0x3ffff);
++it;
cp += (utf8::internal::mask8(*it) << 6) & 0xfff;
++it;
cp += (*it) & 0x3f;
break;
}
++it;
return cp;
}
template <typename octet_iterator>
uint32_t peek_next(octet_iterator it)
{
return utf8::unchecked::next(it);
}
template <typename octet_iterator>
uint32_t prior(octet_iterator& it)
{
while (utf8::internal::is_trail(*(--it))) ;
octet_iterator temp = it;
return utf8::unchecked::next(temp);
}
// Deprecated in versions that include prior, but only for the sake of consistency (see utf8::previous)
template <typename octet_iterator>
inline uint32_t previous(octet_iterator& it)
{
return utf8::unchecked::prior(it);
}
template <typename octet_iterator, typename distance_type>
void advance (octet_iterator& it, distance_type n)
{
for (distance_type i = 0; i < n; ++i)
utf8::unchecked::next(it);
}
template <typename octet_iterator>
typename std::iterator_traits<octet_iterator>::difference_type
distance (octet_iterator first, octet_iterator last)
{
typename std::iterator_traits<octet_iterator>::difference_type dist;
for (dist = 0; first < last; ++dist)
utf8::unchecked::next(first);
return dist;
}
template <typename u16bit_iterator, typename octet_iterator>
octet_iterator utf16to8 (u16bit_iterator start, u16bit_iterator end, octet_iterator result)
{
while (start != end) {
uint32_t cp = utf8::internal::mask16(*start++);
// Take care of surrogate pairs first
if (utf8::internal::is_lead_surrogate(cp)) {
uint32_t trail_surrogate = utf8::internal::mask16(*start++);
cp = (cp << 10) + trail_surrogate + internal::SURROGATE_OFFSET;
}
result = utf8::unchecked::append(cp, result);
}
return result;
}
template <typename u16bit_iterator, typename octet_iterator>
u16bit_iterator utf8to16 (octet_iterator start, octet_iterator end, u16bit_iterator result)
{
while (start < end) {
uint32_t cp = utf8::unchecked::next(start);
if (cp > 0xffff) { //make a surrogate pair
*result++ = static_cast<uint16_t>((cp >> 10) + internal::LEAD_OFFSET);
*result++ = static_cast<uint16_t>((cp & 0x3ff) + internal::TRAIL_SURROGATE_MIN);
}
else
*result++ = static_cast<uint16_t>(cp);
}
return result;
}
template <typename octet_iterator, typename u32bit_iterator>
octet_iterator utf32to8 (u32bit_iterator start, u32bit_iterator end, octet_iterator result)
{
while (start != end)
result = utf8::unchecked::append(*(start++), result);
return result;
}
template <typename octet_iterator, typename u32bit_iterator>
u32bit_iterator utf8to32 (octet_iterator start, octet_iterator end, u32bit_iterator result)
{
while (start < end)
(*result++) = utf8::unchecked::next(start);
return result;
}
// The iterator class
template <typename octet_iterator>
class iterator : public std::iterator <std::bidirectional_iterator_tag, uint32_t> {
octet_iterator it;
public:
iterator () {}
explicit iterator (const octet_iterator& octet_it): it(octet_it) {}
// the default "big three" are OK
octet_iterator base () const { return it; }
uint32_t operator * () const
{
octet_iterator temp = it;
return utf8::unchecked::next(temp);
}
bool operator == (const iterator& rhs) const
{
return (it == rhs.it);
}
bool operator != (const iterator& rhs) const
{
return !(operator == (rhs));
}
iterator& operator ++ ()
{
::std::advance(it, utf8::internal::sequence_length(it));
return *this;
}
iterator operator ++ (int)
{
iterator temp = *this;
::std::advance(it, utf8::internal::sequence_length(it));
return temp;
}
iterator& operator -- ()
{
utf8::unchecked::prior(it);
return *this;
}
iterator operator -- (int)
{
iterator temp = *this;
utf8::unchecked::prior(it);
return temp;
}
}; // class iterator
} // namespace utf8::unchecked
} // namespace utf8
#endif // header guard
......@@ -20,8 +20,6 @@
#include "3rdparty/spdlog/sinks/msvc_sink.h"
#endif // JLIB_WINDOWS
#include "utf8.h"
namespace jlib {
static constexpr char g_logger_name[] = "jlogger";
......@@ -92,12 +90,6 @@ public:
begin_ = std::chrono::steady_clock::now();
}
range_log(const std::wstring& msg) : msg_() {
msg_ = utf8::w2a(msg);
JLOG_DBUG(msg_ + " in");
begin_ = std::chrono::steady_clock::now();
}
~range_log() {
auto diff = std::chrono::steady_clock::now() - begin_;
auto msec = std::chrono::duration_cast<std::chrono::milliseconds>(diff);
......
......@@ -331,5 +331,21 @@ void simple_libevent_client::send(const char* data, size_t len)
evbuffer_unlock(output);
}
bool simple_libevent_client::setRecvBuffSize(int sz)
{
std::lock_guard<std::mutex> lg(mutex_);
if (!started_ || !impl_ || !impl_->base || !impl_->bev) { return false; }
auto fd = bufferevent_getfd(impl_->bev);
int n = sz;
if (n < 512) {
n = 512;
}
if (n > 1048576) {
n = 1048576;
}
int ret = setsockopt(fd, SOL_SOCKET, SO_RCVBUF, (const char*)&n, sizeof(n));
return ret == 0;
}
}
}
......@@ -67,6 +67,8 @@ public:
void send(const char* data, size_t len);
bool isStarted() const { return started_; }
bool isConnected() const { return connected_; }
// must called after connected
bool setRecvBuffSize(int sz);
protected:
bool started_ = false;
......
QMAKE_CXX.INCDIRS = \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.24.28314\\ATLMFC\\include" \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.24.28314\\include" \
"C:\\Program Files (x86)\\Windows Kits\\NETFXSDK\\4.8\\include\\um" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\ucrt" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\shared" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\um" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\winrt" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\cppwinrt"
QMAKE_CXX.LIBDIRS = \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.24.28314\\ATLMFC\\lib\\x86" \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.24.28314\\lib\\x86" \
"C:\\Program Files (x86)\\Windows Kits\\NETFXSDK\\4.8\\lib\\um\\x86" \
"C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.18362.0\\ucrt\\x86" \
"C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.18362.0\\um\\x86"
QMAKE_CXX.QT_COMPILER_STDCXX = 199711L
QMAKE_CXX.QMAKE_MSC_VER = 1924
QMAKE_CXX.QMAKE_MSC_FULL_VER = 192428314
QMAKE_CXX.COMPILER_MACROS = \
QT_COMPILER_STDCXX \
QMAKE_MSC_VER \
QMAKE_MSC_FULL_VER
CONFIG += plugin debug_and_release
TARGET = $$qtLibraryTarget(barrulerplugin)
TEMPLATE = lib
HEADERS = barrulerplugin.h
SOURCES = barrulerplugin.cpp
RESOURCES = icons.qrc
LIBS += -L.
greaterThan(QT_MAJOR_VERSION, 4) {
QT += designer
} else {
CONFIG += designer
}
target.path = $$[QT_INSTALL_PLUGINS]/designer
INSTALLS += target
include(barruler.pri)
This diff is collapsed.
#include "barruler.h"
BarRuler::BarRuler(QWidget *parent) :
QWidget(parent)
{
}
#ifndef BARRULER_H
#define BARRULER_H
#include <QWidget>
#include "../../../util/micro_getter_setter.h"
class BarRuler : public QWidget
{
Q_OBJECT
Q_PROPERTY(double minValue READ getMinValue WRITE setMinValue)
Q_PROPERTY(double maxValue READ getMaxValue WRITE setMaxValue)
Q_PROPERTY(double value READ getValue WRITE setValue)
Q_PROPERTY(int precision READ getPrecision WRITE setPrecision)
Q_PROPERTY(int longStep READ getLongStep WRITE setLongStep)
Q_PROPERTY(int shortStep READ getShortStep WRITE setShortStep)
Q_PROPERTY(int space READ getSpace WRITE setSpace)
Q_PROPERTY(bool animation READ getAnimation WRITE setAnimation)
Q_PROPERTY(double animationStep READ getAnimationStep WRITE setAnimationStep)
Q_PROPERTY(QColor bgColorStart READ getBgColorStart WRITE setBgColorStart)
Q_PROPERTY(QColor bgColorEnd READ getBgColorEnd WRITE setBgColorEnd)
Q_PROPERTY(QColor lineColor READ getLineColor WRITE setLineColor)
Q_PROPERTY(QColor barBgColor READ getBarBgColor WRITE setBarBgColor)
Q_PROPERTY(QColor barColor READ getBarColor WRITE setBarColor)
//! 最小值
DECLARE_PRI_MDI_PUB_G(double, minValue, getMinValue)
//! 最大值
DECLARE_PRI_MDI_PUB_G(double, maxValue, getMaxValue)
//! 目标值
DECLARE_PRI_MDI_PUB_G(double, value, getValue)
//! 精度,小数点后几位
DECLARE_PRI_MDI_PUB_G(int, precision, getPrecision)
//! 长线条等分步长
DECLARE_PRI_MDI_PUB_G(int, longStep, getLongStep)
//! 短线条等分步长
DECLARE_PRI_MDI_PUB_G(int, shortStep, getShortStep)
//! 间距
DECLARE_PRI_MDI_PUB_G(int, space, getSpace)
//! 动画效果
DECLARE_PRI_MDI_PUB_G(bool, animation, getAnimation)
//! 动画步长
DECLARE_PRI_MDI_PUB_G(double, animationStep, getAnimationStep)
//! 背景渐变开始
DECLARE_PRI_MDI_PUB_G(QColor, bgColorStart, getBgColorStart)
//! 背景渐变结束
DECLARE_PRI_MDI_PUB_G(QColor, bgColorEnd, getBgColorEnd)
//! 线条颜色
DECLARE_PRI_MDI_PUB_G(QColor, lineColor, getLineColor)
//! 柱背景色
DECLARE_PRI_MDI_PUB_G(QColor, barBgColor, getBarBgColor)
//! 柱颜色
DECLARE_PRI_MDI_PUB_G(QColor, barColor, getBarColor)
public:
explicit BarRuler(QWidget *parent = 0);
signals:
void valueChanged(double value);
public slots:
//! 设置最大最小值-范围值
void setRange(double minValue, double maxValue);
void setRange(int minValue, int maxValue);
//! 设置最大最小值
void setMinValue(double minValue);
void setMaxValue(double maxValue);
//! 设置目标值
void setValue(double value);
void setValue(int value);
//! 设置精确度
void setPrecision(int precision);
//! 设置线条等分步长
void setLongStep(int longStep);
void setShortStep(int shortStep);
//! 设置间距
void setSpace(int space);
//! 设置是否启用动画显示
void setAnimation(bool animation);
//! 设置动画显示的步长
void setAnimationStep(double animationStep);
//! 设置背景颜色
void setBgColorStart(const QColor &bgColorStart);
void setBgColorEnd(const QColor &bgColorEnd);
//! 设置线条颜色
void setLineColor(const QColor &lineColor);
//! 设置柱状颜色
void setBarBgColor(const QColor &barBgColor);
void setBarColor(const QColor &barColor);
protected:
void paintEvent(QPaintEvent *);
void drawBg(QPainter *painter);
void drawRuler(QPainter *painter);
void drawBarBg(QPainter *painter);
void drawBar(QPainter *painter);
private slots:
void updateValue();
private:
//! 是否倒退
bool reverse;
//! 当前值
double currentValue;
//! 定时器绘制动画
QTimer *timer;
//! 柱状图区域
QRectF barRect;
};
#endif
HEADERS += barruler.h
SOURCES += barruler.cpp
#include "barruler.h"
#include "barrulerplugin.h"
#include <QtPlugin>
BarRulerPlugin::BarRulerPlugin(QObject *parent)
: QObject(parent)
{
m_initialized = false;
}
void BarRulerPlugin::initialize(QDesignerFormEditorInterface * /* core */)
{
if (m_initialized)
return;
// Add extension registrations, etc. here
m_initialized = true;
}
bool BarRulerPlugin::isInitialized() const
{
return m_initialized;
}
QWidget *BarRulerPlugin::createWidget(QWidget *parent)
{
return new BarRuler(parent);
}
QString BarRulerPlugin::name() const
{
return QLatin1String("BarRuler");
}
QString BarRulerPlugin::group() const
{
return QLatin1String("");
}
QIcon BarRulerPlugin::icon() const
{
return QIcon();
}
QString BarRulerPlugin::toolTip() const
{
return QLatin1String("");
}
QString BarRulerPlugin::whatsThis() const
{
return QLatin1String("");
}
bool BarRulerPlugin::isContainer() const
{
return false;
}
QString BarRulerPlugin::domXml() const
{
return QLatin1String("<widget class=\"BarRuler\" name=\"barRuler\">\n</widget>\n");
}
QString BarRulerPlugin::includeFile() const
{
return QLatin1String("barruler.h");
}
#if QT_VERSION < 0x050000
Q_EXPORT_PLUGIN2(barrulerplugin, BarRulerPlugin)
#endif // QT_VERSION < 0x050000
#ifndef BARRULERPLUGIN_H
#define BARRULERPLUGIN_H
#include <QDesignerCustomWidgetInterface>
class BarRulerPlugin : public QObject, public QDesignerCustomWidgetInterface
{
Q_OBJECT
Q_INTERFACES(QDesignerCustomWidgetInterface)
#if QT_VERSION >= 0x050000
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QDesignerCustomWidgetInterface")
#endif // QT_VERSION >= 0x050000
public:
BarRulerPlugin(QObject *parent = 0);
bool isContainer() const;
bool isInitialized() const;
QIcon icon() const;
QString domXml() const;
QString group() const;
QString includeFile() const;
QString name() const;
QString toolTip() const;
QString whatsThis() const;
QWidget *createWidget(QWidget *parent);
void initialize(QDesignerFormEditorInterface *core);
private:
bool m_initialized;
};
#endif
This diff is collapsed.
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Generated Files">
<UniqueIdentifier>{71ED8ED8-ACB9-4CE9-BBE1-E00B30144E11}</UniqueIdentifier>
<Extensions>cpp;c;cxx;moc;h;def;odl;idl;res;</Extensions>
</Filter>
<Filter Include="Generated Files">
<UniqueIdentifier>{71ED8ED8-ACB9-4CE9-BBE1-E00B30144E11}</UniqueIdentifier>
<Extensions>cpp;c;cxx;moc;h;def;odl;idl;res;</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{D9D6E242-F8AF-46E4-B9FD-80ECBC20BA3E}</UniqueIdentifier>
<Extensions>qrc;*</Extensions>
<ParseFiles>false</ParseFiles>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{D9D6E242-F8AF-46E4-B9FD-80ECBC20BA3E}</UniqueIdentifier>
<Extensions>qrc;*</Extensions>
<ParseFiles>false</ParseFiles>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="barruler.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="barrulerplugin.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="barruler.h">
<Filter>Header Files</Filter>
</CustomBuild>
<CustomBuild Include="barrulerplugin.h">
<Filter>Header Files</Filter>
</CustomBuild>
</ItemGroup>
<ItemGroup>
<ClCompile Include="debug\moc_barruler.cpp">
<Filter>Generated Files</Filter>
</ClCompile>
<ClCompile Include="release\moc_barruler.cpp">
<Filter>Generated Files</Filter>
</ClCompile>
<ClCompile Include="debug\moc_barrulerplugin.cpp">
<Filter>Generated Files</Filter>
</ClCompile>
<ClCompile Include="release\moc_barrulerplugin.cpp">
<Filter>Generated Files</Filter>
</ClCompile>
<CustomBuild Include="debug\moc_predefs.h.cbt">
<Filter>Generated Files</Filter>
</CustomBuild>
<CustomBuild Include="release\moc_predefs.h.cbt">
<Filter>Generated Files</Filter>
</CustomBuild>
<ClCompile Include="debug\qrc_icons.cpp">
<Filter>Generated Files</Filter>
</ClCompile>
<ClCompile Include="release\qrc_icons.cpp">
<Filter>Generated Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<CustomBuild Include="icons.qrc">
<Filter>Resource Files</Filter>
</CustomBuild>
</ItemGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LocalDebuggerEnvironment>PATH=C:\Qt\Qt5.9.8\5.9.8\msvc2015\bin%3b$(PATH)</LocalDebuggerEnvironment>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LocalDebuggerEnvironment>PATH=C:\Qt\Qt5.9.8\5.9.8\msvc2015\bin%3b$(PATH)</LocalDebuggerEnvironment>
</PropertyGroup>
</Project>
\ No newline at end of file
<RCC>
<qresource prefix="/" >
</qresource>
</RCC>
QMAKE_CXX.INCDIRS = \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.16.27023\\ATLMFC\\include" \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.16.27023\\include" \
"C:\\Program Files (x86)\\Windows Kits\\NETFXSDK\\4.6.1\\include\\um" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\ucrt" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\shared" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\um" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\winrt" \
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.18362.0\\cppwinrt"
QMAKE_CXX.LIBDIRS = \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.16.27023\\ATLMFC\\lib\\x86" \
"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.16.27023\\lib\\x86" \
"C:\\Program Files (x86)\\Windows Kits\\NETFXSDK\\4.6.1\\lib\\um\\x86" \
"C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.18362.0\\ucrt\\x86" \
"C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.18362.0\\um\\x86"
QMAKE_CXX.QT_COMPILER_STDCXX = 199711L
QMAKE_CXX.QMAKE_MSC_VER = 1916
QMAKE_CXX.QMAKE_MSC_FULL_VER = 191627034
QMAKE_CXX.COMPILER_MACROS = \
QT_COMPILER_STDCXX \
QMAKE_MSC_VER \
QMAKE_MSC_FULL_VER
......@@ -8,7 +8,7 @@
*/
#include <curl/curl.h>
#include <curl.h>
#include <string>
#include <initializer_list>
#include <memory>
......
......@@ -125,38 +125,38 @@ inline std::wstring erase_all_copy(std::wstring str, wchar_t c) {
/**************************** case-conv ***************************/
inline void to_upper(std::string& str) {
std::for_each(str.begin(), str.end(), [](char& c) { c = ::toupper(c); });
std::for_each(str.begin(), str.end(), [](char& c) { c = (char)::toupper(c); });
}
inline void to_upper(std::wstring& str) {
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = ::toupper(c); });
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = (char)::toupper(c); });
}
inline std::string to_upper_copy(std::string str) {
std::for_each(str.begin(), str.end(), [](char& c) { c = ::toupper(c); });
std::for_each(str.begin(), str.end(), [](char& c) { c = (char)::toupper(c); });
return str;
}
inline std::wstring to_upper_copy(std::wstring str) {
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = ::toupper(c); });
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = (char)::toupper(c); });
return str;
}
inline void to_lower(std::string& str) {
std::for_each(str.begin(), str.end(), [](char& c) { c = ::tolower(c); });
std::for_each(str.begin(), str.end(), [](char& c) { c = (char)::tolower(c); });
}
inline void to_lower(std::wstring& str) {
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = ::tolower(c); });
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = (char)::tolower(c); });
}
inline std::string to_lower_copy(std::string str) {
std::for_each(str.begin(), str.end(), [](char& c) { c = ::tolower(c); });
std::for_each(str.begin(), str.end(), [](char& c) { c = (char)::tolower(c); });
return str;
}
inline std::wstring to_lower_copy(std::wstring str) {
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = ::tolower(c); });
std::for_each(str.begin(), str.end(), [](wchar_t& c) { c = (char)::tolower(c); });
return str;
}
......
......@@ -6,7 +6,6 @@
#include <strsafe.h> // StringCch
#include <unordered_map>
#include <algorithm>
#include "../utf8.h"
namespace jlib {
namespace win32 {
......@@ -291,7 +290,7 @@ static std::wstring getMachineGUID()
RegCloseKey(hKey);
} catch (std::runtime_error& e) {
res = utf8::a2w(e.what());
//res = utf8::a2w(e.what());
}
return res;
}
......
#pragma once
#include "../utf8.h"
#include <WinSock2.h>
namespace jlib
{
......
......@@ -8,7 +8,6 @@
#include <unordered_set>
#include "lasterror.h"
#include "UnicodeTool.h"
#include "../utf8.h"
namespace jlib
{
......@@ -44,7 +43,7 @@ inline DWORD daemon(const std::wstring& path, bool wait_app_exit = true, bool sh
}
} else {
auto msg = formatLastError("");
msg.length();
(void)msg.length();
}
return 0xFFFFFFFF;
}
......@@ -57,7 +56,7 @@ inline DWORD daemon(const std::wstring& path, bool wait_app_exit = true, bool sh
* @return 启动程序失败返回0xFFFFFFFF;当 wait_app_exit 为真,返回程序的进程返回值;否则返回程序进程ID;
*/
inline DWORD daemon(const std::string& path, bool wait_app_exit = true, bool show = true) {
return daemon(utf8::a2w(path), wait_app_exit, show);
return daemon(win32::mbcs_to_utf16(path), wait_app_exit, show);
}
/**
......
......@@ -12,9 +12,9 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{EAAE08F7-6CD8-4708-9FD4-ADD856CC6658}</ProjectGuid>
<Keyword>QtVS_v301</Keyword>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<QtMsBuild Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild></PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
......@@ -25,15 +25,9 @@
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">
<QtMsBuild>$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')">
<Message Importance="High" Text="QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly." />
</Target>
......@@ -48,7 +42,7 @@
<PropertyGroup Label="UserMacros" />
<ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')">
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
</ImportGroup><PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"><OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir></PropertyGroup><PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"><OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir></PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<QtInstall>5.9.8</QtInstall>
<QtModules>core;gui;network;widgets</QtModules>
......@@ -67,8 +61,8 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<AdditionalIncludeDirectories>$(DEVLIBS)\jlib;$(DEVLIBS)\json\jsoncpp-1.9.4-install\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<AdditionalIncludeDirectories>.\GeneratedFiles\$(ConfigurationName);.\GeneratedFiles;$(DEVLIBS)\jlib;$(DEVLIBS)\json\jsoncpp-1.9.4-install\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<MultiProcessorCompilation>true</MultiProcessorCompilation></ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
......@@ -83,7 +77,7 @@
<DebugInformationFormat />
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
</ClCompile>
<MultiProcessorCompilation>true</MultiProcessorCompilation></ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
......
......@@ -97,6 +97,7 @@
<PrecompiledHeader>NotUsing</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<AdditionalIncludeDirectories>$(DEVLIBS)\libevent-2.1.12-stable-install\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>
......
......@@ -284,8 +284,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "qt", "..\jlib\qt\qt.vcxproj
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Plugins", "Plugins", "{44FC9BE2-8C8B-4A84-9C3A-28DA3F6C2DC1}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "barrulerplugin", "..\jlib\qt\Plugins\BarRuler\barrulerplugin.vcxproj", "{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_path_helper_local", "test_path_helper_local\test_path_helper_local.vcxproj", "{5BAC792A-2FC6-4E53-8C0B-3267778F8981}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_path_helper_local_without_bin", "test_path_helper_local_without_bin\test_path_helper_local_without_bin.vcxproj", "{2DABB64E-7965-40BA-A81A-8AFACF648AC8}"
......@@ -388,6 +386,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "misc", "misc", "{BCF77277-B
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testSqlHelperQt", "testSqlHelperQt\testSqlHelperQt.vcxproj", "{DADB235B-D5CF-4D42-A208-01E0535DDA35}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_log2", "test_log2\test_log2.vcxproj", "{92449FB7-1853-402A-90A4-EED4A7640A77}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
......@@ -720,16 +720,6 @@ Global
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.ActiveCfg = Release|Win32
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.ActiveCfg = Release|Win32
{B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x86.Build.0 = Release|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Debug|ARM.ActiveCfg = Debug|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Debug|ARM64.ActiveCfg = Debug|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Debug|x64.ActiveCfg = Debug|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Debug|x86.ActiveCfg = Debug|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Debug|x86.Build.0 = Debug|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Release|ARM.ActiveCfg = Release|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Release|ARM64.ActiveCfg = Release|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Release|x64.ActiveCfg = Release|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Release|x86.ActiveCfg = Release|Win32
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724}.Release|x86.Build.0 = Release|Win32
{5BAC792A-2FC6-4E53-8C0B-3267778F8981}.Debug|ARM.ActiveCfg = Debug|Win32
{5BAC792A-2FC6-4E53-8C0B-3267778F8981}.Debug|ARM64.ActiveCfg = Debug|Win32
{5BAC792A-2FC6-4E53-8C0B-3267778F8981}.Debug|x64.ActiveCfg = Debug|x64
......@@ -1150,6 +1140,18 @@ Global
{DADB235B-D5CF-4D42-A208-01E0535DDA35}.Release|x64.ActiveCfg = Release|Win32
{DADB235B-D5CF-4D42-A208-01E0535DDA35}.Release|x86.ActiveCfg = Release|Win32
{DADB235B-D5CF-4D42-A208-01E0535DDA35}.Release|x86.Build.0 = Release|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Debug|ARM.ActiveCfg = Debug|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Debug|ARM64.ActiveCfg = Debug|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Debug|x64.ActiveCfg = Debug|x64
{92449FB7-1853-402A-90A4-EED4A7640A77}.Debug|x64.Build.0 = Debug|x64
{92449FB7-1853-402A-90A4-EED4A7640A77}.Debug|x86.ActiveCfg = Debug|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Debug|x86.Build.0 = Debug|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Release|ARM.ActiveCfg = Release|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Release|ARM64.ActiveCfg = Release|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Release|x64.ActiveCfg = Release|x64
{92449FB7-1853-402A-90A4-EED4A7640A77}.Release|x64.Build.0 = Release|x64
{92449FB7-1853-402A-90A4-EED4A7640A77}.Release|x86.ActiveCfg = Release|Win32
{92449FB7-1853-402A-90A4-EED4A7640A77}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -1204,7 +1206,6 @@ Global
{0CCBAB78-35DD-46FF-B369-AE4920BEA43A} = {D9BC4E5B-7E8F-4C86-BF15-CCB75CBC256F}
{B12702AD-ABFB-343A-A199-8E24837244A3} = {729A65CE-3F07-4C2E-ACDC-F9EEC6477F2A}
{44FC9BE2-8C8B-4A84-9C3A-28DA3F6C2DC1} = {F118E1C9-F461-4CAA-A0F1-75F5A5C8ADF3}
{C1066CE5-C22E-3BC0-A99A-9E37E3DB9724} = {44FC9BE2-8C8B-4A84-9C3A-28DA3F6C2DC1}
{5BAC792A-2FC6-4E53-8C0B-3267778F8981} = {0E6598D3-602D-4552-97F7-DC5AB458D553}
{2DABB64E-7965-40BA-A81A-8AFACF648AC8} = {0E6598D3-602D-4552-97F7-DC5AB458D553}
{33173172-E8FB-403B-8D49-28F4E026C3BB} = {0E6598D3-602D-4552-97F7-DC5AB458D553}
......@@ -1245,6 +1246,7 @@ Global
{E8551DB0-274F-493A-88AF-7383E47F49FA} = {729A65CE-3F07-4C2E-ACDC-F9EEC6477F2A}
{BCF77277-B4F8-49CF-B213-D8086F3BCEFD} = {42703978-A988-403D-9723-E35527FA8A07}
{DADB235B-D5CF-4D42-A208-01E0535DDA35} = {5AFB3C82-FDEA-458C-9B56-E28A3F96F113}
{92449FB7-1853-402A-90A4-EED4A7640A77} = {21DC893D-AB0B-48E1-9E23-069A025218D9}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A8EBEA58-739C-4DED-99C0-239779F57D5D}
......
......@@ -2,17 +2,14 @@
//
#define _CRT_SECURE_NO_WARNINGS
#include "jlib/util/chrono_wrapper.h"
#include "jlib/dp.h"
#include "jlib/log2.h"
#include "jlib/util/mem_tool.h"
#include "jlib/util/micro_getter_setter.h"
//#include "jlib/net.h"
#include "jlib/util/space.h"
#include "jlib/util/std_util.h"
#include "jlib/utf8.h"
#include "jlib/util/version.h"
//#include "jlib/win32.h"
#include "../../jlib/util/chrono_wrapper.h"
#include "../../jlib/dp.h"
#include "../../jlib/log2.h"
#include "../../jlib/util/mem_tool.h"
#include "../../jlib/util/micro_getter_setter.h"
#include "../../jlib/util/space.h"
#include "../../jlib/util/std_util.h"
#include "../../jlib/util/version.h"
int main()
......
......@@ -12,8 +12,9 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{281CEC62-CE6E-4FD6-B186-AEF2BA926BF8}</ProjectGuid>
<Keyword>QtVS_v301</Keyword>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
......@@ -25,15 +26,6 @@
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">
<QtMsBuild>$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\bin\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')">
<Message Importance="High" Text="QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly." />
</Target>
......@@ -49,6 +41,12 @@
<ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')">
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\bin\</OutDir>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<QtInstall>5.9.8</QtInstall>
<QtModules>core</QtModules>
......@@ -67,11 +65,13 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>C:\Qt\Qt5.9.8\5.9.8\msvc2015\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
......@@ -80,6 +80,7 @@
<DebugInformationFormat />
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
......@@ -12,8 +12,9 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{ECF057F3-AB01-4129-8C5C-E59DD4261770}</ProjectGuid>
<Keyword>QtVS_v301</Keyword>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
......@@ -25,15 +26,6 @@
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">
<QtMsBuild>$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')">
<Message Importance="High" Text="QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly." />
</Target>
......@@ -49,6 +41,12 @@
<ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')">
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<QtInstall>5.9.8</QtInstall>
<QtModules>core</QtModules>
......@@ -67,11 +65,13 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>C:\Qt\Qt5.9.8\5.9.8\msvc2015\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
......@@ -80,6 +80,7 @@
<DebugInformationFormat />
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
......@@ -12,8 +12,9 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{726DE046-6AF9-4138-B3C9-23B77822433A}</ProjectGuid>
<Keyword>QtVS_v301</Keyword>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
......@@ -25,15 +26,6 @@
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">
<QtMsBuild>$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\bin\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')">
<Message Importance="High" Text="QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly." />
</Target>
......@@ -49,6 +41,12 @@
<ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')">
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\bin\</OutDir>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<QtInstall>5.9.8</QtInstall>
<QtModules>core</QtModules>
......@@ -67,11 +65,13 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>C:\Qt\Qt5.9.8\5.9.8\msvc2015\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
......@@ -80,6 +80,7 @@
<DebugInformationFormat />
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
......@@ -12,8 +12,9 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{72D8135A-48CF-464E-9B55-8991D2BA35EB}</ProjectGuid>
<Keyword>QtVS_v301</Keyword>
<Keyword>QtVS_v304</Keyword>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<QtMsBuild Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
......@@ -25,15 +26,6 @@
<PlatformToolset>v142</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup Condition="'$(QtMsBuild)'=='' or !Exists('$(QtMsBuild)\qt.targets')">
<QtMsBuild>$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<Target Name="QtMsBuildNotFound" BeforeTargets="CustomBuild;ClCompile" Condition="!Exists('$(QtMsBuild)\qt.targets') or !Exists('$(QtMsBuild)\qt.props')">
<Message Importance="High" Text="QtMsBuild: could not locate qt.targets, qt.props; project may not build correctly." />
</Target>
......@@ -49,6 +41,12 @@
<ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')">
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
</PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<QtInstall>5.9.8</QtInstall>
<QtModules>core</QtModules>
......@@ -67,11 +65,13 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>C:\Qt\Qt5.9.8\5.9.8\msvc2015\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
......@@ -80,6 +80,7 @@
<DebugInformationFormat />
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
......@@ -57,6 +57,11 @@
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|Win32'">
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Link>
<AdditionalLibraryDirectories>C:\Qt\Qt5.9.8\5.9.8\msvc2015\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|Win32'" Label="Configuration">
<ClCompile>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
......
......@@ -76,13 +76,13 @@
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(DEVLIBS)\curl-7.66.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(DEVLIBS);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<AdditionalLibraryDirectories>$(DEVLIBS)\curl-7.66.0\build\Win32\VC15\LIB Release - DLL Windows SSPI;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>libcurl.lib;ws2_32.lib;wldap32.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
......@@ -91,6 +91,7 @@
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(DEVLIBS);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......@@ -104,6 +105,7 @@
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(DEVLIBS);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......@@ -119,6 +121,7 @@
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(DEVLIBS);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
#include "../../jlib/log2.h"
int main()
{
}
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>16.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{92449fb7-1853-402a-90a4-eed4a7640a77}</ProjectGuid>
<RootNamespace>testlog2</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp17</LanguageStandard>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="test_log2.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
</Filter>
<Filter Include="Resource Files">
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="test_log2.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup />
</Project>
\ No newline at end of file
#include "../../jlib/base/logfile.h"
#include "../../jlib/base/logging.h"
//#include "../../jlib/base/logfile.h"
//#include "../../jlib/base/logging.h"
int main()
{
......
#include "../../jlib/base/logging.h"
#include "../../jlib/base/threadpool.h"
#include "../../jlib/base/timezone.h"
//#include "../../jlib/base/logging.h"
//#include "../../jlib/base/threadpool.h"
//#include "../../jlib/base/timezone.h"
using namespace jlib;
//using namespace jlib;
int main()
{
Logger::setLogLevel(Logger::LOGLEVEL_TRACE);
/*Logger::setLogLevel(Logger::LOGLEVEL_TRACE);
LOG_TRACE << "trace";
LOG_DEBUG << "debug";
......@@ -16,5 +16,5 @@ int main()
LOG_INFO << sizeof(Logger);
LOG_INFO << sizeof(LogStream);
LOG_INFO << sizeof(Format);
LOG_INFO << sizeof(LogStream::Buffer);
LOG_INFO << sizeof(LogStream::Buffer);*/
}
\ No newline at end of file
......@@ -94,7 +94,7 @@
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<AdditionalDependencies>G:\dev_libs\date\build\Debug\tz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
......
......@@ -12,7 +12,7 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{E287BCBE-0CA5-4E3C-9F44-05F505A5A0AA}</ProjectGuid>
<Keyword>QtVS_v302</Keyword>
<Keyword>QtVS_v304</Keyword>
<QtMsBuild Condition="'$(QtMsBuild)'=='' OR !Exists('$(QtMsBuild)\qt.targets')">$(MSBuildProjectDirectory)\QtMsBuild</QtMsBuild>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
......@@ -41,6 +41,8 @@
<ImportGroup Condition="Exists('$(QtMsBuild)\qt_defaults.props')">
<Import Project="$(QtMsBuild)\qt_defaults.props" />
</ImportGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|Win32'" Label="QtSettings">
<QtInstall>5.9.8</QtInstall>
<QtModules>core</QtModules>
......@@ -57,13 +59,20 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|$Platform$'">
<ClCompile>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|$Platform$'">
<ClCompile>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Link>
<AdditionalLibraryDirectories>C:\Qt\Qt5.9.8\5.9.8\msvc2015\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_reader.cpp" />
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_value.cpp" />
......
#include "std_util.h"
#include "../../jlib/util/std_util.h"
#include <assert.h>
int main()
......
......@@ -76,7 +76,7 @@
<Optimization>Disabled</Optimization>
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(DEVLIBS)\jlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
#include "../../jlib/base/logging.h"
#include "../../jlib/base/threadpool.h"
#include "../../jlib/base/countdownlatch.h"
#include "../../jlib/base/currentthread.h"
#include "../../jlib/base/process.h"
using namespace jlib;
using namespace std::chrono;
void print() {
printf("tid=%lld\n", CurrentThread::tid());
}
void printString(const std::string& str) {
LOG_INFO << str;
std::this_thread::sleep_for(100ms);
}
void test(int maxSize) {
LOG_WARN << "Test ThreadPool with max queue size = " << maxSize;
ThreadPool pool("MainThreadPool");
pool.setMaxQueueSize(maxSize);
pool.start(5);
LOG_WARN << "Adding";
pool.run(print);
pool.run(print);
for (int i = 0; i < 100; i++) {
char buf[32];
snprintf(buf, sizeof(buf), "task %d", i);
pool.run(std::bind(printString, std::string(buf)));
}
LOG_WARN << "Done";
CountDownLatch latch(1);
pool.run(std::bind(&CountDownLatch::countDown, &latch));
latch.wait();
pool.stop();
LOG_WARN << "All Done\n\n";
}
int main()
{
Logger::setLogLevel(Logger::LOGLEVEL_DEBUG);
LOG_INFO << getPid();
//test(0);
//test(1);
//test(5);
//test(10);
test(50);
}
//
//#include "../../jlib/base/logging.h"
//#include "../../jlib/base/threadpool.h"
//#include "../../jlib/base/countdownlatch.h"
//#include "../../jlib/base/currentthread.h"
//#include "../../jlib/base/process.h"
//
//using namespace jlib;
//using namespace std::chrono;
//
//void print() {
// printf("tid=%lld\n", CurrentThread::tid());
//}
//
//void printString(const std::string& str) {
// LOG_INFO << str;
// std::this_thread::sleep_for(100ms);
//}
//
//void test(int maxSize) {
// LOG_WARN << "Test ThreadPool with max queue size = " << maxSize;
// ThreadPool pool("MainThreadPool");
// pool.setMaxQueueSize(maxSize);
// pool.start(5);
//
// LOG_WARN << "Adding";
// pool.run(print);
// pool.run(print);
//
// for (int i = 0; i < 100; i++) {
// char buf[32];
// snprintf(buf, sizeof(buf), "task %d", i);
// pool.run(std::bind(printString, std::string(buf)));
// }
//
// LOG_WARN << "Done";
//
// CountDownLatch latch(1);
// pool.run(std::bind(&CountDownLatch::countDown, &latch));
// latch.wait();
// pool.stop();
//
// LOG_WARN << "All Done\n\n";
//}
//
//int main()
//{
// Logger::setLogLevel(Logger::LOGLEVEL_DEBUG);
// LOG_INFO << getPid();
// //test(0);
// //test(1);
// //test(5);
// //test(10);
// test(50);
//
//}
int main(){}
\ No newline at end of file
This diff is collapsed.
......@@ -77,6 +77,7 @@
<SDLCheck>true</SDLCheck>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp17</LanguageStandard>
<AdditionalIncludeDirectories>$(DEVLIBS);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
......
......@@ -22,7 +22,7 @@ int main()
}*/
Result result;
WmiBase::simpleSelect({ L"AdapterRAM", L"Description" }, L"Win32_VideoController", result);
WmiBase::simpleSelect({ L"AdapterRAM", L"Description" }, L"Win32_VideoController", L"", result);
for (const auto& i : result) {
for (const auto& j : i) {
printf("%ls %ls\n", j.first.data(), j.second.data());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment