mirror of
https://gitee.com/gfdgd-xi/deep-wine-runner
synced 2025-01-13 01:58:27 +08:00
进行修改
This commit is contained in:
parent
79f1c7cae1
commit
74c94cc58f
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,3 +1,7 @@
|
|||||||
|
/*
|
||||||
|
来自:https://gitee.com/zinface/z-tools/tree/speedwidget-dev/src/SpeedWidget/infoUtils
|
||||||
|
依据 GPLV3 开源
|
||||||
|
*/
|
||||||
#include "infoutils.h"
|
#include "infoutils.h"
|
||||||
|
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
|
Binary file not shown.
BIN
VM-source/main.o
BIN
VM-source/main.o
Binary file not shown.
@ -13,6 +13,12 @@
|
|||||||
#include <infoutils.h>
|
#include <infoutils.h>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
|
#include <QJsonParseError>
|
||||||
|
#include <QJsonValue>
|
||||||
|
#include <QJsonObject>
|
||||||
|
#include <QtMath>
|
||||||
|
#include <QJsonArray>
|
||||||
|
#include <QDesktopServices>
|
||||||
|
|
||||||
MainWindow::MainWindow(QWidget *parent) :
|
MainWindow::MainWindow(QWidget *parent) :
|
||||||
QMainWindow(parent),
|
QMainWindow(parent),
|
||||||
@ -24,7 +30,7 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
QLoggingCategory::defaultCategory()->setEnabled(QtDebugMsg, true);
|
QLoggingCategory::defaultCategory()->setEnabled(QtDebugMsg, true);
|
||||||
// 判断是否安装 vbox
|
// 判断是否安装 vbox
|
||||||
if(system("which VBoxManage")){
|
if(system("which VBoxManage")){
|
||||||
if(QMessageBox::question(NULL, "提示", "检测到您似乎没有安装 VirtualBox,立即安装?") == QMessageBox::Yes){
|
if(QMessageBox::question(this, "提示", "检测到您似乎没有安装 VirtualBox,立即安装?") == QMessageBox::Yes){
|
||||||
system("xdg-open https://www.virtualbox.org/wiki/Linux_Downloads");
|
system("xdg-open https://www.virtualbox.org/wiki/Linux_Downloads");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -33,6 +39,39 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
connect(cpuGet, &QTimer::timeout, this, &MainWindow::ShowCPUMessage);
|
connect(cpuGet, &QTimer::timeout, this, &MainWindow::ShowCPUMessage);
|
||||||
cpuGet->setInterval(600);
|
cpuGet->setInterval(600);
|
||||||
cpuGet->start();
|
cpuGet->start();
|
||||||
|
// 读取程序版本号
|
||||||
|
// / 版本号文件是否存在
|
||||||
|
QFile fileinfo(QCoreApplication::applicationDirPath() + "/../information.json");
|
||||||
|
if(!fileinfo.exists()){
|
||||||
|
fileinfo.close();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
fileinfo.open(QIODevice::ReadOnly);
|
||||||
|
QJsonParseError error;
|
||||||
|
QJsonDocument doc = QJsonDocument::fromJson(fileinfo.readAll(), &error);
|
||||||
|
if(error.error != QJsonParseError::NoError){
|
||||||
|
QMessageBox::critical(this, "错误", "无法读取版本号!");
|
||||||
|
qDebug() << error.errorString();
|
||||||
|
fileinfo.close();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
QJsonObject versionObject = doc.object();
|
||||||
|
QJsonValue versionValue = versionObject.value("Version");
|
||||||
|
QJsonArray thank = versionObject.value("Thank").toArray();
|
||||||
|
QString thankText = "";
|
||||||
|
for (int i = 0; thank.count() > i; i++) {
|
||||||
|
thankText += "<p>" + thank.at(i).toString() + "</p>\n";
|
||||||
|
qDebug() << thank.at(i).toString();
|
||||||
|
|
||||||
|
}
|
||||||
|
// 设置程序标题
|
||||||
|
this->setWindowTitle("Windows 应用适配工具 " + versionValue.toString());
|
||||||
|
// 读取谢明列表
|
||||||
|
ui->textBrowser_2->setHtml("<p>程序版本号:" + versionValue.toString() + "</p>" + ui->textBrowser_2->toHtml() +
|
||||||
|
"<hr/><h1>谢明列表</h1>" + thankText);
|
||||||
|
connect(ui->textBrowser_2, &QTextBrowser::anchorClicked, this, [=](const QUrl &link){
|
||||||
|
QDesktopServices::openUrl(link);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::ShowCPUMessage(){
|
void MainWindow::ShowCPUMessage(){
|
||||||
@ -53,9 +92,20 @@ void MainWindow::ShowCPUMessage(){
|
|||||||
|
|
||||||
infoUtils::memoryRate(memory, memoryAll, swap, swapAll);
|
infoUtils::memoryRate(memory, memoryAll, swap, swapAll);
|
||||||
|
|
||||||
|
// 获取开机时间
|
||||||
|
double run,idle;
|
||||||
|
infoUtils::uptime(run,idle);
|
||||||
|
int time = qFloor(run);
|
||||||
|
int ss = time % 60;
|
||||||
|
int MM = (time % 3600) / 60;
|
||||||
|
int hh = (time % 86400) / 3600;
|
||||||
|
int dd = time / 86400;
|
||||||
|
|
||||||
|
|
||||||
QString info = "CPU: " + QString::number(cpu) + "% 内存: " +
|
QString info = "CPU: " + QString::number(cpu) + "% 内存: " +
|
||||||
QString::number(memory * 100 / memoryAll) + "% " + QString::number(memory / 1024) + "MB/" + QString::number(memoryAll / 1024) + "MB";
|
QString::number(memory * 100 / memoryAll) + "% " + QString::number(memory / 1024) + "MB/" + QString::number(memoryAll / 1024) + "MB" +
|
||||||
qDebug() << cpuAll << " " << cpuFree;
|
" 开机时间: " + QString::number(dd) + "天 " + QString::number(hh) + ":" + QString::number(MM) + ":" + QString::number(ss);
|
||||||
|
//qDebug() << cpuAll << " " << cpuFree;
|
||||||
ui->CPUValue->showMessage(info, 5000);
|
ui->CPUValue->showMessage(info, 5000);
|
||||||
m_cpuAll = cpuAll;
|
m_cpuAll = cpuAll;
|
||||||
m_cpuFree = cpuFree;
|
m_cpuFree = cpuFree;
|
||||||
|
Binary file not shown.
@ -25,7 +25,7 @@
|
|||||||
<enum>QTabWidget::Rounded</enum>
|
<enum>QTabWidget::Rounded</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="currentIndex">
|
<property name="currentIndex">
|
||||||
<number>1</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="tab">
|
<widget class="QWidget" name="tab">
|
||||||
<attribute name="title">
|
<attribute name="title">
|
||||||
@ -298,6 +298,9 @@ p, li { white-space: pre-wrap; }
|
|||||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">参考文献:</p>
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">参考文献:</p>
|
||||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Droid Sans Mono','monospace','monospace'; font-size:11pt; color:#6a9955;">https://juejin.cn/post/7080484519328874510</span></p></body></html></string>
|
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Droid Sans Mono','monospace','monospace'; font-size:11pt; color:#6a9955;">https://juejin.cn/post/7080484519328874510</span></p></body></html></string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="openLinks">
|
||||||
|
<bool>false</bool>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
@ -1,116 +0,0 @@
|
|||||||
/****************************************************************************
|
|
||||||
** Meta object code from reading C++ file 'infoutils.h'
|
|
||||||
**
|
|
||||||
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.15.6)
|
|
||||||
**
|
|
||||||
** WARNING! All changes made in this file will be lost!
|
|
||||||
*****************************************************************************/
|
|
||||||
|
|
||||||
#include <memory>
|
|
||||||
#include "infoutils.h"
|
|
||||||
#include <QtCore/qbytearray.h>
|
|
||||||
#include <QtCore/qmetatype.h>
|
|
||||||
#if !defined(Q_MOC_OUTPUT_REVISION)
|
|
||||||
#error "The header file 'infoutils.h' doesn't include <QObject>."
|
|
||||||
#elif Q_MOC_OUTPUT_REVISION != 67
|
|
||||||
#error "This file was generated using the moc from 5.15.6. It"
|
|
||||||
#error "cannot be used with the include files from this version of Qt."
|
|
||||||
#error "(The moc has changed too much.)"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
QT_BEGIN_MOC_NAMESPACE
|
|
||||||
QT_WARNING_PUSH
|
|
||||||
QT_WARNING_DISABLE_DEPRECATED
|
|
||||||
struct qt_meta_stringdata_infoUtils_t {
|
|
||||||
QByteArrayData data[9];
|
|
||||||
char stringdata0[75];
|
|
||||||
};
|
|
||||||
#define QT_MOC_LITERAL(idx, ofs, len) \
|
|
||||||
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
|
|
||||||
qptrdiff(offsetof(qt_meta_stringdata_infoUtils_t, stringdata0) + ofs \
|
|
||||||
- idx * sizeof(QByteArrayData)) \
|
|
||||||
)
|
|
||||||
static const qt_meta_stringdata_infoUtils_t qt_meta_stringdata_infoUtils = {
|
|
||||||
{
|
|
||||||
QT_MOC_LITERAL(0, 0, 9), // "infoUtils"
|
|
||||||
QT_MOC_LITERAL(1, 10, 8), // "RateUnit"
|
|
||||||
QT_MOC_LITERAL(2, 19, 7), // "RateBit"
|
|
||||||
QT_MOC_LITERAL(3, 27, 8), // "RateByte"
|
|
||||||
QT_MOC_LITERAL(4, 36, 6), // "RateKb"
|
|
||||||
QT_MOC_LITERAL(5, 43, 6), // "RateMb"
|
|
||||||
QT_MOC_LITERAL(6, 50, 6), // "RateGb"
|
|
||||||
QT_MOC_LITERAL(7, 57, 6), // "RateTb"
|
|
||||||
QT_MOC_LITERAL(8, 64, 10) // "RateUnknow"
|
|
||||||
|
|
||||||
},
|
|
||||||
"infoUtils\0RateUnit\0RateBit\0RateByte\0"
|
|
||||||
"RateKb\0RateMb\0RateGb\0RateTb\0RateUnknow"
|
|
||||||
};
|
|
||||||
#undef QT_MOC_LITERAL
|
|
||||||
|
|
||||||
static const uint qt_meta_data_infoUtils[] = {
|
|
||||||
|
|
||||||
// content:
|
|
||||||
8, // revision
|
|
||||||
0, // classname
|
|
||||||
0, 0, // classinfo
|
|
||||||
0, 0, // methods
|
|
||||||
0, 0, // properties
|
|
||||||
1, 14, // enums/sets
|
|
||||||
0, 0, // constructors
|
|
||||||
0, // flags
|
|
||||||
0, // signalCount
|
|
||||||
|
|
||||||
// enums: name, alias, flags, count, data
|
|
||||||
1, 1, 0x0, 7, 19,
|
|
||||||
|
|
||||||
// enum data: key, value
|
|
||||||
2, uint(infoUtils::RateBit),
|
|
||||||
3, uint(infoUtils::RateByte),
|
|
||||||
4, uint(infoUtils::RateKb),
|
|
||||||
5, uint(infoUtils::RateMb),
|
|
||||||
6, uint(infoUtils::RateGb),
|
|
||||||
7, uint(infoUtils::RateTb),
|
|
||||||
8, uint(infoUtils::RateUnknow),
|
|
||||||
|
|
||||||
0 // eod
|
|
||||||
};
|
|
||||||
|
|
||||||
void infoUtils::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
|
|
||||||
{
|
|
||||||
(void)_o;
|
|
||||||
(void)_id;
|
|
||||||
(void)_c;
|
|
||||||
(void)_a;
|
|
||||||
}
|
|
||||||
|
|
||||||
QT_INIT_METAOBJECT const QMetaObject infoUtils::staticMetaObject = { {
|
|
||||||
QMetaObject::SuperData::link<QObject::staticMetaObject>(),
|
|
||||||
qt_meta_stringdata_infoUtils.data,
|
|
||||||
qt_meta_data_infoUtils,
|
|
||||||
qt_static_metacall,
|
|
||||||
nullptr,
|
|
||||||
nullptr
|
|
||||||
} };
|
|
||||||
|
|
||||||
|
|
||||||
const QMetaObject *infoUtils::metaObject() const
|
|
||||||
{
|
|
||||||
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
|
|
||||||
}
|
|
||||||
|
|
||||||
void *infoUtils::qt_metacast(const char *_clname)
|
|
||||||
{
|
|
||||||
if (!_clname) return nullptr;
|
|
||||||
if (!strcmp(_clname, qt_meta_stringdata_infoUtils.stringdata0))
|
|
||||||
return static_cast<void*>(this);
|
|
||||||
return QObject::qt_metacast(_clname);
|
|
||||||
}
|
|
||||||
|
|
||||||
int infoUtils::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
|
|
||||||
{
|
|
||||||
_id = QObject::qt_metacall(_c, _id, _a);
|
|
||||||
return _id;
|
|
||||||
}
|
|
||||||
QT_WARNING_POP
|
|
||||||
QT_END_MOC_NAMESPACE
|
|
Binary file not shown.
@ -1,134 +0,0 @@
|
|||||||
/****************************************************************************
|
|
||||||
** Meta object code from reading C++ file 'mainwindow.h'
|
|
||||||
**
|
|
||||||
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.15.6)
|
|
||||||
**
|
|
||||||
** WARNING! All changes made in this file will be lost!
|
|
||||||
*****************************************************************************/
|
|
||||||
|
|
||||||
#include <memory>
|
|
||||||
#include "mainwindow.h"
|
|
||||||
#include <QtCore/qbytearray.h>
|
|
||||||
#include <QtCore/qmetatype.h>
|
|
||||||
#if !defined(Q_MOC_OUTPUT_REVISION)
|
|
||||||
#error "The header file 'mainwindow.h' doesn't include <QObject>."
|
|
||||||
#elif Q_MOC_OUTPUT_REVISION != 67
|
|
||||||
#error "This file was generated using the moc from 5.15.6. It"
|
|
||||||
#error "cannot be used with the include files from this version of Qt."
|
|
||||||
#error "(The moc has changed too much.)"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
QT_BEGIN_MOC_NAMESPACE
|
|
||||||
QT_WARNING_PUSH
|
|
||||||
QT_WARNING_DISABLE_DEPRECATED
|
|
||||||
struct qt_meta_stringdata_MainWindow_t {
|
|
||||||
QByteArrayData data[7];
|
|
||||||
char stringdata0[87];
|
|
||||||
};
|
|
||||||
#define QT_MOC_LITERAL(idx, ofs, len) \
|
|
||||||
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
|
|
||||||
qptrdiff(offsetof(qt_meta_stringdata_MainWindow_t, stringdata0) + ofs \
|
|
||||||
- idx * sizeof(QByteArrayData)) \
|
|
||||||
)
|
|
||||||
static const qt_meta_stringdata_MainWindow_t qt_meta_stringdata_MainWindow = {
|
|
||||||
{
|
|
||||||
QT_MOC_LITERAL(0, 0, 10), // "MainWindow"
|
|
||||||
QT_MOC_LITERAL(1, 11, 14), // "ShowCPUMessage"
|
|
||||||
QT_MOC_LITERAL(2, 26, 0), // ""
|
|
||||||
QT_MOC_LITERAL(3, 27, 18), // "on_browser_clicked"
|
|
||||||
QT_MOC_LITERAL(4, 46, 13), // "GetRunCommand"
|
|
||||||
QT_MOC_LITERAL(5, 60, 7), // "command"
|
|
||||||
QT_MOC_LITERAL(6, 68, 18) // "on_install_clicked"
|
|
||||||
|
|
||||||
},
|
|
||||||
"MainWindow\0ShowCPUMessage\0\0"
|
|
||||||
"on_browser_clicked\0GetRunCommand\0"
|
|
||||||
"command\0on_install_clicked"
|
|
||||||
};
|
|
||||||
#undef QT_MOC_LITERAL
|
|
||||||
|
|
||||||
static const uint qt_meta_data_MainWindow[] = {
|
|
||||||
|
|
||||||
// content:
|
|
||||||
8, // revision
|
|
||||||
0, // classname
|
|
||||||
0, 0, // classinfo
|
|
||||||
4, 14, // methods
|
|
||||||
0, 0, // properties
|
|
||||||
0, 0, // enums/sets
|
|
||||||
0, 0, // constructors
|
|
||||||
0, // flags
|
|
||||||
0, // signalCount
|
|
||||||
|
|
||||||
// slots: name, argc, parameters, tag, flags
|
|
||||||
1, 0, 34, 2, 0x08 /* Private */,
|
|
||||||
3, 0, 35, 2, 0x08 /* Private */,
|
|
||||||
4, 1, 36, 2, 0x08 /* Private */,
|
|
||||||
6, 0, 39, 2, 0x08 /* Private */,
|
|
||||||
|
|
||||||
// slots: parameters
|
|
||||||
QMetaType::Void,
|
|
||||||
QMetaType::Void,
|
|
||||||
QMetaType::QString, QMetaType::QString, 5,
|
|
||||||
QMetaType::Void,
|
|
||||||
|
|
||||||
0 // eod
|
|
||||||
};
|
|
||||||
|
|
||||||
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
|
|
||||||
{
|
|
||||||
if (_c == QMetaObject::InvokeMetaMethod) {
|
|
||||||
auto *_t = static_cast<MainWindow *>(_o);
|
|
||||||
(void)_t;
|
|
||||||
switch (_id) {
|
|
||||||
case 0: _t->ShowCPUMessage(); break;
|
|
||||||
case 1: _t->on_browser_clicked(); break;
|
|
||||||
case 2: { QString _r = _t->GetRunCommand((*reinterpret_cast< QString(*)>(_a[1])));
|
|
||||||
if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = std::move(_r); } break;
|
|
||||||
case 3: _t->on_install_clicked(); break;
|
|
||||||
default: ;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
QT_INIT_METAOBJECT const QMetaObject MainWindow::staticMetaObject = { {
|
|
||||||
QMetaObject::SuperData::link<QMainWindow::staticMetaObject>(),
|
|
||||||
qt_meta_stringdata_MainWindow.data,
|
|
||||||
qt_meta_data_MainWindow,
|
|
||||||
qt_static_metacall,
|
|
||||||
nullptr,
|
|
||||||
nullptr
|
|
||||||
} };
|
|
||||||
|
|
||||||
|
|
||||||
const QMetaObject *MainWindow::metaObject() const
|
|
||||||
{
|
|
||||||
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
|
|
||||||
}
|
|
||||||
|
|
||||||
void *MainWindow::qt_metacast(const char *_clname)
|
|
||||||
{
|
|
||||||
if (!_clname) return nullptr;
|
|
||||||
if (!strcmp(_clname, qt_meta_stringdata_MainWindow.stringdata0))
|
|
||||||
return static_cast<void*>(this);
|
|
||||||
return QMainWindow::qt_metacast(_clname);
|
|
||||||
}
|
|
||||||
|
|
||||||
int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
|
|
||||||
{
|
|
||||||
_id = QMainWindow::qt_metacall(_c, _id, _a);
|
|
||||||
if (_id < 0)
|
|
||||||
return _id;
|
|
||||||
if (_c == QMetaObject::InvokeMetaMethod) {
|
|
||||||
if (_id < 4)
|
|
||||||
qt_static_metacall(this, _c, _id, _a);
|
|
||||||
_id -= 4;
|
|
||||||
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
|
|
||||||
if (_id < 4)
|
|
||||||
*reinterpret_cast<int*>(_a[0]) = -1;
|
|
||||||
_id -= 4;
|
|
||||||
}
|
|
||||||
return _id;
|
|
||||||
}
|
|
||||||
QT_WARNING_POP
|
|
||||||
QT_END_MOC_NAMESPACE
|
|
Binary file not shown.
@ -1,375 +0,0 @@
|
|||||||
#define __DBL_MIN_EXP__ (-1021)
|
|
||||||
#define __FLT32X_MAX_EXP__ 1024
|
|
||||||
#define __cpp_attributes 200809
|
|
||||||
#define __UINT_LEAST16_MAX__ 0xffff
|
|
||||||
#define __ATOMIC_ACQUIRE 2
|
|
||||||
#define __FLT128_MAX_10_EXP__ 4932
|
|
||||||
#define __FLT_MIN__ 1.17549435082228750796873653722224568e-38F
|
|
||||||
#define __GCC_IEC_559_COMPLEX 2
|
|
||||||
#define __UINT_LEAST8_TYPE__ unsigned char
|
|
||||||
#define __SIZEOF_FLOAT80__ 16
|
|
||||||
#define __INTMAX_C(c) c ## L
|
|
||||||
#define __CHAR_BIT__ 8
|
|
||||||
#define __UINT8_MAX__ 0xff
|
|
||||||
#define __WINT_MAX__ 0xffffffffU
|
|
||||||
#define __FLT32_MIN_EXP__ (-125)
|
|
||||||
#define __cpp_static_assert 200410
|
|
||||||
#define __ORDER_LITTLE_ENDIAN__ 1234
|
|
||||||
#define __SIZE_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __WCHAR_MAX__ 0x7fffffff
|
|
||||||
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
|
|
||||||
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
|
|
||||||
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
|
|
||||||
#define __DBL_DENORM_MIN__ double(4.94065645841246544176568792868221372e-324L)
|
|
||||||
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
|
|
||||||
#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
|
|
||||||
#define __GCC_IEC_559 2
|
|
||||||
#define __FLT32X_DECIMAL_DIG__ 17
|
|
||||||
#define __FLT_EVAL_METHOD__ 0
|
|
||||||
#define __unix__ 1
|
|
||||||
#define __cpp_binary_literals 201304
|
|
||||||
#define __FLT64_DECIMAL_DIG__ 17
|
|
||||||
#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
|
|
||||||
#define __x86_64 1
|
|
||||||
#define __cpp_variadic_templates 200704
|
|
||||||
#define __UINT_FAST64_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __SIG_ATOMIC_TYPE__ int
|
|
||||||
#define __DBL_MIN_10_EXP__ (-307)
|
|
||||||
#define __FINITE_MATH_ONLY__ 0
|
|
||||||
#define __GNUC_PATCHLEVEL__ 0
|
|
||||||
#define __FLT32_HAS_DENORM__ 1
|
|
||||||
#define __UINT_FAST8_MAX__ 0xff
|
|
||||||
#define __has_include(STR) __has_include__(STR)
|
|
||||||
#define __DEC64_MAX_EXP__ 385
|
|
||||||
#define __INT8_C(c) c
|
|
||||||
#define __INT_LEAST8_WIDTH__ 8
|
|
||||||
#define __UINT_LEAST64_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __SHRT_MAX__ 0x7fff
|
|
||||||
#define __LDBL_MAX__ 1.18973149535723176502126385303097021e+4932L
|
|
||||||
#define __FLT64X_MAX_10_EXP__ 4932
|
|
||||||
#define __UINT_LEAST8_MAX__ 0xff
|
|
||||||
#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
|
|
||||||
#define __FLT128_DENORM_MIN__ 6.47517511943802511092443895822764655e-4966F128
|
|
||||||
#define __UINTMAX_TYPE__ long unsigned int
|
|
||||||
#define __linux 1
|
|
||||||
#define __DEC32_EPSILON__ 1E-6DF
|
|
||||||
#define __FLT_EVAL_METHOD_TS_18661_3__ 0
|
|
||||||
#define __OPTIMIZE__ 1
|
|
||||||
#define __unix 1
|
|
||||||
#define __UINT32_MAX__ 0xffffffffU
|
|
||||||
#define __GXX_EXPERIMENTAL_CXX0X__ 1
|
|
||||||
#define __LDBL_MAX_EXP__ 16384
|
|
||||||
#define __FLT128_MIN_EXP__ (-16381)
|
|
||||||
#define __WINT_MIN__ 0U
|
|
||||||
#define __linux__ 1
|
|
||||||
#define __FLT128_MIN_10_EXP__ (-4931)
|
|
||||||
#define __INT_LEAST16_WIDTH__ 16
|
|
||||||
#define __SCHAR_MAX__ 0x7f
|
|
||||||
#define __FLT128_MANT_DIG__ 113
|
|
||||||
#define __WCHAR_MIN__ (-__WCHAR_MAX__ - 1)
|
|
||||||
#define __INT64_C(c) c ## L
|
|
||||||
#define __DBL_DIG__ 15
|
|
||||||
#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
|
|
||||||
#define __FLT64X_MANT_DIG__ 64
|
|
||||||
#define __SIZEOF_INT__ 4
|
|
||||||
#define __SIZEOF_POINTER__ 8
|
|
||||||
#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
|
|
||||||
#define __USER_LABEL_PREFIX__
|
|
||||||
#define __FLT64X_EPSILON__ 1.08420217248550443400745280086994171e-19F64x
|
|
||||||
#define __STDC_HOSTED__ 1
|
|
||||||
#define __LDBL_HAS_INFINITY__ 1
|
|
||||||
#define __FLT32_DIG__ 6
|
|
||||||
#define __FLT_EPSILON__ 1.19209289550781250000000000000000000e-7F
|
|
||||||
#define __GXX_WEAK__ 1
|
|
||||||
#define __SHRT_WIDTH__ 16
|
|
||||||
#define __LDBL_MIN__ 3.36210314311209350626267781732175260e-4932L
|
|
||||||
#define __DEC32_MAX__ 9.999999E96DF
|
|
||||||
#define __cpp_threadsafe_static_init 200806
|
|
||||||
#define __FLT64X_DENORM_MIN__ 3.64519953188247460252840593361941982e-4951F64x
|
|
||||||
#define __FLT32X_HAS_INFINITY__ 1
|
|
||||||
#define __INT32_MAX__ 0x7fffffff
|
|
||||||
#define __INT_WIDTH__ 32
|
|
||||||
#define __SIZEOF_LONG__ 8
|
|
||||||
#define __STDC_IEC_559__ 1
|
|
||||||
#define __STDC_ISO_10646__ 201706L
|
|
||||||
#define __UINT16_C(c) c
|
|
||||||
#define __PTRDIFF_WIDTH__ 64
|
|
||||||
#define __DECIMAL_DIG__ 21
|
|
||||||
#define __FLT64_EPSILON__ 2.22044604925031308084726333618164062e-16F64
|
|
||||||
#define __gnu_linux__ 1
|
|
||||||
#define __INTMAX_WIDTH__ 64
|
|
||||||
#define __FLT64_MIN_EXP__ (-1021)
|
|
||||||
#define __has_include_next(STR) __has_include_next__(STR)
|
|
||||||
#define __FLT64X_MIN_10_EXP__ (-4931)
|
|
||||||
#define __LDBL_HAS_QUIET_NAN__ 1
|
|
||||||
#define __FLT64_MANT_DIG__ 53
|
|
||||||
#define __GNUC__ 8
|
|
||||||
#define __GXX_RTTI 1
|
|
||||||
#define __MMX__ 1
|
|
||||||
#define __cpp_delegating_constructors 200604
|
|
||||||
#define __FLT_HAS_DENORM__ 1
|
|
||||||
#define __SIZEOF_LONG_DOUBLE__ 16
|
|
||||||
#define __BIGGEST_ALIGNMENT__ 16
|
|
||||||
#define __STDC_UTF_16__ 1
|
|
||||||
#define __FLT64_MAX_10_EXP__ 308
|
|
||||||
#define __FLT32_HAS_INFINITY__ 1
|
|
||||||
#define __DBL_MAX__ double(1.79769313486231570814527423731704357e+308L)
|
|
||||||
#define __cpp_raw_strings 200710
|
|
||||||
#define __INT_FAST32_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __DBL_HAS_INFINITY__ 1
|
|
||||||
#define __DEC32_MIN_EXP__ (-94)
|
|
||||||
#define __INTPTR_WIDTH__ 64
|
|
||||||
#define __FLT32X_HAS_DENORM__ 1
|
|
||||||
#define __INT_FAST16_TYPE__ long int
|
|
||||||
#define __LDBL_HAS_DENORM__ 1
|
|
||||||
#define __cplusplus 201103L
|
|
||||||
#define __cpp_ref_qualifiers 200710
|
|
||||||
#define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
|
|
||||||
#define __INT_LEAST32_MAX__ 0x7fffffff
|
|
||||||
#define __DEC32_MIN__ 1E-95DF
|
|
||||||
#define __DEPRECATED 1
|
|
||||||
#define __cpp_rvalue_references 200610
|
|
||||||
#define __DBL_MAX_EXP__ 1024
|
|
||||||
#define __WCHAR_WIDTH__ 32
|
|
||||||
#define __FLT32_MAX__ 3.40282346638528859811704183484516925e+38F32
|
|
||||||
#define __DEC128_EPSILON__ 1E-33DL
|
|
||||||
#define __SSE2_MATH__ 1
|
|
||||||
#define __ATOMIC_HLE_RELEASE 131072
|
|
||||||
#define __PTRDIFF_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __amd64 1
|
|
||||||
#define __ATOMIC_HLE_ACQUIRE 65536
|
|
||||||
#define __FLT32_HAS_QUIET_NAN__ 1
|
|
||||||
#define __GNUG__ 8
|
|
||||||
#define __LONG_LONG_MAX__ 0x7fffffffffffffffLL
|
|
||||||
#define __SIZEOF_SIZE_T__ 8
|
|
||||||
#define __cpp_rvalue_reference 200610
|
|
||||||
#define __cpp_nsdmi 200809
|
|
||||||
#define __FLT64X_MIN_EXP__ (-16381)
|
|
||||||
#define __SIZEOF_WINT_T__ 4
|
|
||||||
#define __LONG_LONG_WIDTH__ 64
|
|
||||||
#define __cpp_initializer_lists 200806
|
|
||||||
#define __FLT32_MAX_EXP__ 128
|
|
||||||
#define __cpp_hex_float 201603
|
|
||||||
#define __GCC_HAVE_DWARF2_CFI_ASM 1
|
|
||||||
#define __GXX_ABI_VERSION 1013
|
|
||||||
#define __FLT128_HAS_INFINITY__ 1
|
|
||||||
#define __FLT_MIN_EXP__ (-125)
|
|
||||||
#define __cpp_lambdas 200907
|
|
||||||
#define __FLT64X_HAS_QUIET_NAN__ 1
|
|
||||||
#define __INT_FAST64_TYPE__ long int
|
|
||||||
#define __FLT64_DENORM_MIN__ 4.94065645841246544176568792868221372e-324F64
|
|
||||||
#define __DBL_MIN__ double(2.22507385850720138309023271733240406e-308L)
|
|
||||||
#define __LP64__ 1
|
|
||||||
#define __FLT32X_EPSILON__ 2.22044604925031308084726333618164062e-16F32x
|
|
||||||
#define __DECIMAL_BID_FORMAT__ 1
|
|
||||||
#define __FLT64_MIN_10_EXP__ (-307)
|
|
||||||
#define __FLT64X_DECIMAL_DIG__ 21
|
|
||||||
#define __DEC128_MIN__ 1E-6143DL
|
|
||||||
#define __REGISTER_PREFIX__
|
|
||||||
#define __UINT16_MAX__ 0xffff
|
|
||||||
#define __DBL_HAS_DENORM__ 1
|
|
||||||
#define __FLT32_MIN__ 1.17549435082228750796873653722224568e-38F32
|
|
||||||
#define __UINT8_TYPE__ unsigned char
|
|
||||||
#define __FLT_MANT_DIG__ 24
|
|
||||||
#define __LDBL_DECIMAL_DIG__ 21
|
|
||||||
#define __VERSION__ "8.3.0"
|
|
||||||
#define __UINT64_C(c) c ## UL
|
|
||||||
#define __cpp_unicode_characters 200704
|
|
||||||
#define _STDC_PREDEF_H 1
|
|
||||||
#define __GCC_ATOMIC_INT_LOCK_FREE 2
|
|
||||||
#define __FLT128_MAX_EXP__ 16384
|
|
||||||
#define __FLT32_MANT_DIG__ 24
|
|
||||||
#define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__
|
|
||||||
#define __STDC_IEC_559_COMPLEX__ 1
|
|
||||||
#define __FLT128_HAS_DENORM__ 1
|
|
||||||
#define __FLT128_DIG__ 33
|
|
||||||
#define __SCHAR_WIDTH__ 8
|
|
||||||
#define __INT32_C(c) c
|
|
||||||
#define __DEC64_EPSILON__ 1E-15DD
|
|
||||||
#define __ORDER_PDP_ENDIAN__ 3412
|
|
||||||
#define __DEC128_MIN_EXP__ (-6142)
|
|
||||||
#define __FLT32_MAX_10_EXP__ 38
|
|
||||||
#define __INT_FAST32_TYPE__ long int
|
|
||||||
#define __UINT_LEAST16_TYPE__ short unsigned int
|
|
||||||
#define __FLT64X_HAS_INFINITY__ 1
|
|
||||||
#define unix 1
|
|
||||||
#define __INT16_MAX__ 0x7fff
|
|
||||||
#define __cpp_rtti 199711
|
|
||||||
#define __SIZE_TYPE__ long unsigned int
|
|
||||||
#define __UINT64_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __FLT64X_DIG__ 18
|
|
||||||
#define __INT8_TYPE__ signed char
|
|
||||||
#define __ELF__ 1
|
|
||||||
#define __GCC_ASM_FLAG_OUTPUTS__ 1
|
|
||||||
#define __FLT_RADIX__ 2
|
|
||||||
#define __INT_LEAST16_TYPE__ short int
|
|
||||||
#define __LDBL_EPSILON__ 1.08420217248550443400745280086994171e-19L
|
|
||||||
#define __UINTMAX_C(c) c ## UL
|
|
||||||
#define __GLIBCXX_BITSIZE_INT_N_0 128
|
|
||||||
#define __k8 1
|
|
||||||
#define __SIG_ATOMIC_MAX__ 0x7fffffff
|
|
||||||
#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
|
|
||||||
#define __SIZEOF_PTRDIFF_T__ 8
|
|
||||||
#define __FLT32X_MANT_DIG__ 53
|
|
||||||
#define __x86_64__ 1
|
|
||||||
#define __FLT32X_MIN_EXP__ (-1021)
|
|
||||||
#define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
|
|
||||||
#define __INT_FAST16_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __FLT64_DIG__ 15
|
|
||||||
#define __UINT_FAST32_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __UINT_LEAST64_TYPE__ long unsigned int
|
|
||||||
#define __FLT_HAS_QUIET_NAN__ 1
|
|
||||||
#define __FLT_MAX_10_EXP__ 38
|
|
||||||
#define __LONG_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __FLT64X_HAS_DENORM__ 1
|
|
||||||
#define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
|
|
||||||
#define __FLT_HAS_INFINITY__ 1
|
|
||||||
#define __cpp_unicode_literals 200710
|
|
||||||
#define __UINT_FAST16_TYPE__ long unsigned int
|
|
||||||
#define __DEC64_MAX__ 9.999999999999999E384DD
|
|
||||||
#define __INT_FAST32_WIDTH__ 64
|
|
||||||
#define __CHAR16_TYPE__ short unsigned int
|
|
||||||
#define __PRAGMA_REDEFINE_EXTNAME 1
|
|
||||||
#define __SIZE_WIDTH__ 64
|
|
||||||
#define __SEG_FS 1
|
|
||||||
#define __INT_LEAST16_MAX__ 0x7fff
|
|
||||||
#define __DEC64_MANT_DIG__ 16
|
|
||||||
#define __INT64_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __UINT_LEAST32_MAX__ 0xffffffffU
|
|
||||||
#define __SEG_GS 1
|
|
||||||
#define __FLT32_DENORM_MIN__ 1.40129846432481707092372958328991613e-45F32
|
|
||||||
#define __GCC_ATOMIC_LONG_LOCK_FREE 2
|
|
||||||
#define __SIG_ATOMIC_WIDTH__ 32
|
|
||||||
#define __INT_LEAST64_TYPE__ long int
|
|
||||||
#define __INT16_TYPE__ short int
|
|
||||||
#define __INT_LEAST8_TYPE__ signed char
|
|
||||||
#define __DEC32_MAX_EXP__ 97
|
|
||||||
#define __INT_FAST8_MAX__ 0x7f
|
|
||||||
#define __FLT128_MAX__ 1.18973149535723176508575932662800702e+4932F128
|
|
||||||
#define __INTPTR_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define linux 1
|
|
||||||
#define __cpp_range_based_for 200907
|
|
||||||
#define __FLT64_HAS_QUIET_NAN__ 1
|
|
||||||
#define __FLT32_MIN_10_EXP__ (-37)
|
|
||||||
#define __SSE2__ 1
|
|
||||||
#define __EXCEPTIONS 1
|
|
||||||
#define __LDBL_MANT_DIG__ 64
|
|
||||||
#define __DBL_HAS_QUIET_NAN__ 1
|
|
||||||
#define __FLT64_HAS_INFINITY__ 1
|
|
||||||
#define __FLT64X_MAX__ 1.18973149535723176502126385303097021e+4932F64x
|
|
||||||
#define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1)
|
|
||||||
#define __code_model_small__ 1
|
|
||||||
#define __k8__ 1
|
|
||||||
#define __INTPTR_TYPE__ long int
|
|
||||||
#define __UINT16_TYPE__ short unsigned int
|
|
||||||
#define __WCHAR_TYPE__ int
|
|
||||||
#define __SIZEOF_FLOAT__ 4
|
|
||||||
#define __UINTPTR_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __INT_FAST64_WIDTH__ 64
|
|
||||||
#define __DEC64_MIN_EXP__ (-382)
|
|
||||||
#define __cpp_decltype 200707
|
|
||||||
#define __FLT32_DECIMAL_DIG__ 9
|
|
||||||
#define __INT_FAST64_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1
|
|
||||||
#define __FLT_DIG__ 6
|
|
||||||
#define __FLT64X_MAX_EXP__ 16384
|
|
||||||
#define __UINT_FAST64_TYPE__ long unsigned int
|
|
||||||
#define __INT_MAX__ 0x7fffffff
|
|
||||||
#define __amd64__ 1
|
|
||||||
#define __INT64_TYPE__ long int
|
|
||||||
#define __FLT_MAX_EXP__ 128
|
|
||||||
#define __ORDER_BIG_ENDIAN__ 4321
|
|
||||||
#define __DBL_MANT_DIG__ 53
|
|
||||||
#define __cpp_inheriting_constructors 201511
|
|
||||||
#define __SIZEOF_FLOAT128__ 16
|
|
||||||
#define __INT_LEAST64_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __DEC64_MIN__ 1E-383DD
|
|
||||||
#define __WINT_TYPE__ unsigned int
|
|
||||||
#define __UINT_LEAST32_TYPE__ unsigned int
|
|
||||||
#define __SIZEOF_SHORT__ 2
|
|
||||||
#define __SSE__ 1
|
|
||||||
#define __LDBL_MIN_EXP__ (-16381)
|
|
||||||
#define __FLT64_MAX__ 1.79769313486231570814527423731704357e+308F64
|
|
||||||
#define __WINT_WIDTH__ 32
|
|
||||||
#define __INT_LEAST8_MAX__ 0x7f
|
|
||||||
#define __FLT32X_MAX_10_EXP__ 308
|
|
||||||
#define __SIZEOF_INT128__ 16
|
|
||||||
#define __LDBL_MAX_10_EXP__ 4932
|
|
||||||
#define __ATOMIC_RELAXED 0
|
|
||||||
#define __DBL_EPSILON__ double(2.22044604925031308084726333618164062e-16L)
|
|
||||||
#define __FLT128_MIN__ 3.36210314311209350626267781732175260e-4932F128
|
|
||||||
#define _LP64 1
|
|
||||||
#define __UINT8_C(c) c
|
|
||||||
#define __FLT64_MAX_EXP__ 1024
|
|
||||||
#define __INT_LEAST32_TYPE__ int
|
|
||||||
#define __SIZEOF_WCHAR_T__ 4
|
|
||||||
#define __FLT128_HAS_QUIET_NAN__ 1
|
|
||||||
#define __INT_FAST8_TYPE__ signed char
|
|
||||||
#define __FLT64X_MIN__ 3.36210314311209350626267781732175260e-4932F64x
|
|
||||||
#define __GNUC_STDC_INLINE__ 1
|
|
||||||
#define __FLT64_HAS_DENORM__ 1
|
|
||||||
#define __FLT32_EPSILON__ 1.19209289550781250000000000000000000e-7F32
|
|
||||||
#define __DBL_DECIMAL_DIG__ 17
|
|
||||||
#define __STDC_UTF_32__ 1
|
|
||||||
#define __INT_FAST8_WIDTH__ 8
|
|
||||||
#define __FXSR__ 1
|
|
||||||
#define __DEC_EVAL_METHOD__ 2
|
|
||||||
#define __FLT32X_MAX__ 1.79769313486231570814527423731704357e+308F32x
|
|
||||||
#define __cpp_runtime_arrays 198712
|
|
||||||
#define __UINT64_TYPE__ long unsigned int
|
|
||||||
#define __UINT32_C(c) c ## U
|
|
||||||
#define __INTMAX_MAX__ 0x7fffffffffffffffL
|
|
||||||
#define __cpp_alias_templates 200704
|
|
||||||
#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
|
|
||||||
#define __FLT_DENORM_MIN__ 1.40129846432481707092372958328991613e-45F
|
|
||||||
#define __INT8_MAX__ 0x7f
|
|
||||||
#define __LONG_WIDTH__ 64
|
|
||||||
#define __UINT_FAST32_TYPE__ long unsigned int
|
|
||||||
#define __CHAR32_TYPE__ unsigned int
|
|
||||||
#define __FLT_MAX__ 3.40282346638528859811704183484516925e+38F
|
|
||||||
#define __cpp_constexpr 200704
|
|
||||||
#define __INT32_TYPE__ int
|
|
||||||
#define __SIZEOF_DOUBLE__ 8
|
|
||||||
#define __cpp_exceptions 199711
|
|
||||||
#define __FLT_MIN_10_EXP__ (-37)
|
|
||||||
#define __FLT64_MIN__ 2.22507385850720138309023271733240406e-308F64
|
|
||||||
#define __INT_LEAST32_WIDTH__ 32
|
|
||||||
#define __INTMAX_TYPE__ long int
|
|
||||||
#define __DEC128_MAX_EXP__ 6145
|
|
||||||
#define __FLT32X_HAS_QUIET_NAN__ 1
|
|
||||||
#define __ATOMIC_CONSUME 1
|
|
||||||
#define __GNUC_MINOR__ 3
|
|
||||||
#define __GLIBCXX_TYPE_INT_N_0 __int128
|
|
||||||
#define __INT_FAST16_WIDTH__ 64
|
|
||||||
#define __UINTMAX_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __DEC32_MANT_DIG__ 7
|
|
||||||
#define __FLT32X_DENORM_MIN__ 4.94065645841246544176568792868221372e-324F32x
|
|
||||||
#define __DBL_MAX_10_EXP__ 308
|
|
||||||
#define __LDBL_DENORM_MIN__ 3.64519953188247460252840593361941982e-4951L
|
|
||||||
#define __INT16_C(c) c
|
|
||||||
#define __STDC__ 1
|
|
||||||
#define __FLT32X_DIG__ 15
|
|
||||||
#define __PTRDIFF_TYPE__ long int
|
|
||||||
#define __ATOMIC_SEQ_CST 5
|
|
||||||
#define __UINT32_TYPE__ unsigned int
|
|
||||||
#define __FLT32X_MIN_10_EXP__ (-307)
|
|
||||||
#define __UINTPTR_TYPE__ long unsigned int
|
|
||||||
#define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
|
|
||||||
#define __DEC128_MANT_DIG__ 34
|
|
||||||
#define __LDBL_MIN_10_EXP__ (-4931)
|
|
||||||
#define __FLT128_EPSILON__ 1.92592994438723585305597794258492732e-34F128
|
|
||||||
#define __SSE_MATH__ 1
|
|
||||||
#define __SIZEOF_LONG_LONG__ 8
|
|
||||||
#define __cpp_user_defined_literals 200809
|
|
||||||
#define __FLT128_DECIMAL_DIG__ 36
|
|
||||||
#define __GCC_ATOMIC_LLONG_LOCK_FREE 2
|
|
||||||
#define __FLT32X_MIN__ 2.22507385850720138309023271733240406e-308F32x
|
|
||||||
#define __LDBL_DIG__ 18
|
|
||||||
#define __FLT_DECIMAL_DIG__ 9
|
|
||||||
#define __UINT_FAST16_MAX__ 0xffffffffffffffffUL
|
|
||||||
#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
|
|
||||||
#define __INT_LEAST64_WIDTH__ 64
|
|
||||||
#define __UINT_FAST8_TYPE__ unsigned char
|
|
||||||
#define _GNU_SOURCE 1
|
|
||||||
#define __ATOMIC_ACQ_REL 4
|
|
||||||
#define __ATOMIC_RELEASE 3
|
|
215801
VM-source/qrc_图标.cpp
215801
VM-source/qrc_图标.cpp
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@ -1,374 +0,0 @@
|
|||||||
/********************************************************************************
|
|
||||||
** Form generated from reading UI file 'mainwindow.ui'
|
|
||||||
**
|
|
||||||
** Created by: Qt User Interface Compiler version 5.15.6
|
|
||||||
**
|
|
||||||
** WARNING! All changes made in this file will be lost when recompiling UI file!
|
|
||||||
********************************************************************************/
|
|
||||||
|
|
||||||
#ifndef UI_MAINWINDOW_H
|
|
||||||
#define UI_MAINWINDOW_H
|
|
||||||
|
|
||||||
#include <QtCore/QVariant>
|
|
||||||
#include <QtGui/QIcon>
|
|
||||||
#include <QtWidgets/QAction>
|
|
||||||
#include <QtWidgets/QApplication>
|
|
||||||
#include <QtWidgets/QComboBox>
|
|
||||||
#include <QtWidgets/QHBoxLayout>
|
|
||||||
#include <QtWidgets/QLabel>
|
|
||||||
#include <QtWidgets/QLineEdit>
|
|
||||||
#include <QtWidgets/QMainWindow>
|
|
||||||
#include <QtWidgets/QPushButton>
|
|
||||||
#include <QtWidgets/QSpacerItem>
|
|
||||||
#include <QtWidgets/QStatusBar>
|
|
||||||
#include <QtWidgets/QTabWidget>
|
|
||||||
#include <QtWidgets/QTextBrowser>
|
|
||||||
#include <QtWidgets/QVBoxLayout>
|
|
||||||
#include <QtWidgets/QWidget>
|
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
|
||||||
|
|
||||||
class Ui_MainWindow
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
QAction *action;
|
|
||||||
QAction *action_2;
|
|
||||||
QWidget *centralWidget;
|
|
||||||
QHBoxLayout *horizontalLayout;
|
|
||||||
QTabWidget *tabWidget;
|
|
||||||
QWidget *tab;
|
|
||||||
QVBoxLayout *verticalLayout;
|
|
||||||
QHBoxLayout *horizontalLayout_2;
|
|
||||||
QLabel *label;
|
|
||||||
QLineEdit *isoPath;
|
|
||||||
QPushButton *browser;
|
|
||||||
QHBoxLayout *horizontalLayout_3;
|
|
||||||
QLabel *label_2;
|
|
||||||
QComboBox *systemVersion;
|
|
||||||
QHBoxLayout *horizontalLayout_4;
|
|
||||||
QSpacerItem *horizontalSpacer;
|
|
||||||
QPushButton *install;
|
|
||||||
QTextBrowser *textBrowser_3;
|
|
||||||
QWidget *tab_3;
|
|
||||||
QHBoxLayout *horizontalLayout_5;
|
|
||||||
QTextBrowser *textBrowser;
|
|
||||||
QWidget *tab_2;
|
|
||||||
QHBoxLayout *horizontalLayout_6;
|
|
||||||
QVBoxLayout *verticalLayout_3;
|
|
||||||
QLabel *label_3;
|
|
||||||
QSpacerItem *verticalSpacer_2;
|
|
||||||
QTextBrowser *textBrowser_2;
|
|
||||||
QStatusBar *CPUValue;
|
|
||||||
|
|
||||||
void setupUi(QMainWindow *MainWindow)
|
|
||||||
{
|
|
||||||
if (MainWindow->objectName().isEmpty())
|
|
||||||
MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
|
|
||||||
MainWindow->resize(807, 429);
|
|
||||||
QIcon icon;
|
|
||||||
icon.addFile(QString::fromUtf8(":/icon.png"), QSize(), QIcon::Normal, QIcon::Off);
|
|
||||||
MainWindow->setWindowIcon(icon);
|
|
||||||
action = new QAction(MainWindow);
|
|
||||||
action->setObjectName(QString::fromUtf8("action"));
|
|
||||||
action_2 = new QAction(MainWindow);
|
|
||||||
action_2->setObjectName(QString::fromUtf8("action_2"));
|
|
||||||
centralWidget = new QWidget(MainWindow);
|
|
||||||
centralWidget->setObjectName(QString::fromUtf8("centralWidget"));
|
|
||||||
horizontalLayout = new QHBoxLayout(centralWidget);
|
|
||||||
horizontalLayout->setSpacing(6);
|
|
||||||
horizontalLayout->setContentsMargins(11, 11, 11, 11);
|
|
||||||
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
|
|
||||||
tabWidget = new QTabWidget(centralWidget);
|
|
||||||
tabWidget->setObjectName(QString::fromUtf8("tabWidget"));
|
|
||||||
tabWidget->setTabShape(QTabWidget::Rounded);
|
|
||||||
tab = new QWidget();
|
|
||||||
tab->setObjectName(QString::fromUtf8("tab"));
|
|
||||||
verticalLayout = new QVBoxLayout(tab);
|
|
||||||
verticalLayout->setSpacing(6);
|
|
||||||
verticalLayout->setContentsMargins(11, 11, 11, 11);
|
|
||||||
verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
|
|
||||||
horizontalLayout_2 = new QHBoxLayout();
|
|
||||||
horizontalLayout_2->setSpacing(6);
|
|
||||||
horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2"));
|
|
||||||
label = new QLabel(tab);
|
|
||||||
label->setObjectName(QString::fromUtf8("label"));
|
|
||||||
|
|
||||||
horizontalLayout_2->addWidget(label);
|
|
||||||
|
|
||||||
isoPath = new QLineEdit(tab);
|
|
||||||
isoPath->setObjectName(QString::fromUtf8("isoPath"));
|
|
||||||
|
|
||||||
horizontalLayout_2->addWidget(isoPath);
|
|
||||||
|
|
||||||
browser = new QPushButton(tab);
|
|
||||||
browser->setObjectName(QString::fromUtf8("browser"));
|
|
||||||
|
|
||||||
horizontalLayout_2->addWidget(browser);
|
|
||||||
|
|
||||||
|
|
||||||
verticalLayout->addLayout(horizontalLayout_2);
|
|
||||||
|
|
||||||
horizontalLayout_3 = new QHBoxLayout();
|
|
||||||
horizontalLayout_3->setSpacing(6);
|
|
||||||
horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3"));
|
|
||||||
label_2 = new QLabel(tab);
|
|
||||||
label_2->setObjectName(QString::fromUtf8("label_2"));
|
|
||||||
|
|
||||||
horizontalLayout_3->addWidget(label_2);
|
|
||||||
|
|
||||||
systemVersion = new QComboBox(tab);
|
|
||||||
systemVersion->addItem(QString());
|
|
||||||
systemVersion->addItem(QString());
|
|
||||||
systemVersion->addItem(QString());
|
|
||||||
systemVersion->setObjectName(QString::fromUtf8("systemVersion"));
|
|
||||||
|
|
||||||
horizontalLayout_3->addWidget(systemVersion);
|
|
||||||
|
|
||||||
horizontalLayout_3->setStretch(1, 1);
|
|
||||||
|
|
||||||
verticalLayout->addLayout(horizontalLayout_3);
|
|
||||||
|
|
||||||
horizontalLayout_4 = new QHBoxLayout();
|
|
||||||
horizontalLayout_4->setSpacing(6);
|
|
||||||
horizontalLayout_4->setObjectName(QString::fromUtf8("horizontalLayout_4"));
|
|
||||||
horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
|
|
||||||
|
|
||||||
horizontalLayout_4->addItem(horizontalSpacer);
|
|
||||||
|
|
||||||
install = new QPushButton(tab);
|
|
||||||
install->setObjectName(QString::fromUtf8("install"));
|
|
||||||
|
|
||||||
horizontalLayout_4->addWidget(install);
|
|
||||||
|
|
||||||
|
|
||||||
verticalLayout->addLayout(horizontalLayout_4);
|
|
||||||
|
|
||||||
textBrowser_3 = new QTextBrowser(tab);
|
|
||||||
textBrowser_3->setObjectName(QString::fromUtf8("textBrowser_3"));
|
|
||||||
|
|
||||||
verticalLayout->addWidget(textBrowser_3);
|
|
||||||
|
|
||||||
tabWidget->addTab(tab, QString());
|
|
||||||
tab_3 = new QWidget();
|
|
||||||
tab_3->setObjectName(QString::fromUtf8("tab_3"));
|
|
||||||
horizontalLayout_5 = new QHBoxLayout(tab_3);
|
|
||||||
horizontalLayout_5->setSpacing(6);
|
|
||||||
horizontalLayout_5->setContentsMargins(11, 11, 11, 11);
|
|
||||||
horizontalLayout_5->setObjectName(QString::fromUtf8("horizontalLayout_5"));
|
|
||||||
textBrowser = new QTextBrowser(tab_3);
|
|
||||||
textBrowser->setObjectName(QString::fromUtf8("textBrowser"));
|
|
||||||
textBrowser->setUndoRedoEnabled(false);
|
|
||||||
|
|
||||||
horizontalLayout_5->addWidget(textBrowser);
|
|
||||||
|
|
||||||
tabWidget->addTab(tab_3, QString());
|
|
||||||
tab_2 = new QWidget();
|
|
||||||
tab_2->setObjectName(QString::fromUtf8("tab_2"));
|
|
||||||
QSizePolicy sizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred);
|
|
||||||
sizePolicy.setHorizontalStretch(0);
|
|
||||||
sizePolicy.setVerticalStretch(0);
|
|
||||||
sizePolicy.setHeightForWidth(tab_2->sizePolicy().hasHeightForWidth());
|
|
||||||
tab_2->setSizePolicy(sizePolicy);
|
|
||||||
horizontalLayout_6 = new QHBoxLayout(tab_2);
|
|
||||||
horizontalLayout_6->setSpacing(6);
|
|
||||||
horizontalLayout_6->setContentsMargins(11, 11, 11, 11);
|
|
||||||
horizontalLayout_6->setObjectName(QString::fromUtf8("horizontalLayout_6"));
|
|
||||||
verticalLayout_3 = new QVBoxLayout();
|
|
||||||
verticalLayout_3->setSpacing(6);
|
|
||||||
verticalLayout_3->setObjectName(QString::fromUtf8("verticalLayout_3"));
|
|
||||||
label_3 = new QLabel(tab_2);
|
|
||||||
label_3->setObjectName(QString::fromUtf8("label_3"));
|
|
||||||
QSizePolicy sizePolicy1(QSizePolicy::Maximum, QSizePolicy::Maximum);
|
|
||||||
sizePolicy1.setHorizontalStretch(0);
|
|
||||||
sizePolicy1.setVerticalStretch(0);
|
|
||||||
sizePolicy1.setHeightForWidth(label_3->sizePolicy().hasHeightForWidth());
|
|
||||||
label_3->setSizePolicy(sizePolicy1);
|
|
||||||
label_3->setMinimumSize(QSize(200, 200));
|
|
||||||
label_3->setMaximumSize(QSize(200, 200));
|
|
||||||
label_3->setStyleSheet(QString::fromUtf8("border-image: url(:/deepin-wine-runner.png);"));
|
|
||||||
|
|
||||||
verticalLayout_3->addWidget(label_3);
|
|
||||||
|
|
||||||
verticalSpacer_2 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
|
|
||||||
|
|
||||||
verticalLayout_3->addItem(verticalSpacer_2);
|
|
||||||
|
|
||||||
|
|
||||||
horizontalLayout_6->addLayout(verticalLayout_3);
|
|
||||||
|
|
||||||
textBrowser_2 = new QTextBrowser(tab_2);
|
|
||||||
textBrowser_2->setObjectName(QString::fromUtf8("textBrowser_2"));
|
|
||||||
QSizePolicy sizePolicy2(QSizePolicy::Minimum, QSizePolicy::Expanding);
|
|
||||||
sizePolicy2.setHorizontalStretch(0);
|
|
||||||
sizePolicy2.setVerticalStretch(0);
|
|
||||||
sizePolicy2.setHeightForWidth(textBrowser_2->sizePolicy().hasHeightForWidth());
|
|
||||||
textBrowser_2->setSizePolicy(sizePolicy2);
|
|
||||||
|
|
||||||
horizontalLayout_6->addWidget(textBrowser_2);
|
|
||||||
|
|
||||||
tabWidget->addTab(tab_2, QString());
|
|
||||||
|
|
||||||
horizontalLayout->addWidget(tabWidget);
|
|
||||||
|
|
||||||
MainWindow->setCentralWidget(centralWidget);
|
|
||||||
CPUValue = new QStatusBar(MainWindow);
|
|
||||||
CPUValue->setObjectName(QString::fromUtf8("CPUValue"));
|
|
||||||
MainWindow->setStatusBar(CPUValue);
|
|
||||||
|
|
||||||
retranslateUi(MainWindow);
|
|
||||||
|
|
||||||
tabWidget->setCurrentIndex(1);
|
|
||||||
|
|
||||||
|
|
||||||
QMetaObject::connectSlotsByName(MainWindow);
|
|
||||||
} // setupUi
|
|
||||||
|
|
||||||
void retranslateUi(QMainWindow *MainWindow)
|
|
||||||
{
|
|
||||||
MainWindow->setWindowTitle(QCoreApplication::translate("MainWindow", "Windows \345\272\224\347\224\250\351\200\202\351\205\215\345\267\245\345\205\267", nullptr));
|
|
||||||
action->setText(QCoreApplication::translate("MainWindow", "\351\200\200\345\207\272", nullptr));
|
|
||||||
action_2->setText(QCoreApplication::translate("MainWindow", "\345\205\263\344\272\216", nullptr));
|
|
||||||
label->setText(QCoreApplication::translate("MainWindow", "\351\225\234\345\203\217\350\267\257\345\276\204\357\274\232", nullptr));
|
|
||||||
isoPath->setPlaceholderText(QCoreApplication::translate("MainWindow", "\350\257\267\351\200\211\346\213\251\347\263\273\347\273\237\351\225\234\345\203\217", nullptr));
|
|
||||||
browser->setText(QCoreApplication::translate("MainWindow", "\346\265\217\350\247\210\342\200\246\342\200\246", nullptr));
|
|
||||||
label_2->setText(QCoreApplication::translate("MainWindow", "\347\263\273\347\273\237\347\211\210\346\234\254\357\274\232", nullptr));
|
|
||||||
systemVersion->setItemText(0, QCoreApplication::translate("MainWindow", "Windows 7 32 \344\275\215\357\274\210\346\224\257\346\214\201\350\207\252\345\212\250\345\256\211\350\243\205\357\274\211", nullptr));
|
|
||||||
systemVersion->setItemText(1, QCoreApplication::translate("MainWindow", "Windows 7 64 \344\275\215\357\274\210\346\224\257\346\214\201\350\207\252\345\212\250\345\256\211\350\243\205\357\274\211", nullptr));
|
|
||||||
systemVersion->setItemText(2, QCoreApplication::translate("MainWindow", "\345\205\266\345\256\203 Windows \347\263\273\347\273\237\357\274\210\344\270\215\346\224\257\346\214\201\350\207\252\345\212\250\345\256\211\350\243\205\357\274\211", nullptr));
|
|
||||||
|
|
||||||
systemVersion->setCurrentText(QString());
|
|
||||||
systemVersion->setPlaceholderText(QCoreApplication::translate("MainWindow", "\350\257\267\351\200\211\346\213\251\347\263\273\347\273\237\347\261\273\345\236\213\357\274\210\345\246\202\346\236\234\350\257\206\345\210\253\344\270\215\344\272\206\350\257\267\350\207\252\350\241\214\351\200\211\346\213\251\357\274\214\345\246\202\346\236\234\351\200\211\346\213\251\351\224\231\350\257\257\346\210\226\344\270\215\346\224\257\346\214\201\345\260\206\346\227\240\346\263\225\350\277\233\350\241\214\350\207\252\345\212\250\345\256\211\350\243\205\357\274\211", nullptr));
|
|
||||||
install->setText(QCoreApplication::translate("MainWindow", "\345\256\211\350\243\205", nullptr));
|
|
||||||
textBrowser_3->setHtml(QCoreApplication::translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
|
||||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
|
||||||
"p, li { white-space: pre-wrap; }\n"
|
|
||||||
"</style></head><body style=\" font-family:'Noto Sans CJK SC'; font-size:10.5pt; font-weight:400; font-style:normal;\">\n"
|
|
||||||
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:10pt;\">\344\275\277\347\224\250\350\277\205\351\233\267\346\210\226\350\200\205\347\275\221\347\233\230\344\270\213\350\275\275\344\273\245\344\270\213\344\273\273\346\204\217\344\270\200\344\270\252\351\223\276\346\216\245\347\204\266\345\220\216\345\234\250\344\270\212\351\235\242\351\200\211\346\213\251\345\215\263\345\217\257\357\274\232</span></p>\n"
|
|
||||||
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:10pt;\">123 \347\275\221"
|
|
||||||
"\347\233\230\351\223\276\346\216\245\357\274\232https://www.123pan.com/s/pDSKVv-oypWv</span></p>\n"
|
|
||||||
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:10pt;\">\350\277\205\351\233\267\347\275\221\347\233\230\357\274\232https://pan.xunlei.com/s/VNKMz3wgbYHg6JIh50ZKIc7pA1?pwd=35e5 \346\217\220\345\217\226\347\240\201\357\274\23235e5</span></p>\n"
|
|
||||||
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:10pt;\">\347\231\276\345\272\246\347\275\221\347\233\230\357\274\232https://pan.baidu.com/s/19WbvinITCQJFZpAdZutrjg?pwd=me4y \346\217\220\345\217\226\347\240\201: me4y</span></p>\n"
|
|
||||||
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:10pt;\">\357\274\210\345\246\202\346\236\234\344\270\213\350\275\275\350\277\231\344\270\252\357\274"
|
|
||||||
"\214\347\263\273\347\273\237\347\211\210\346\234\254\351\200\211\347\254\254\344\270\200\351\241\271\357\274\214\344\270\200\350\210\254\346\216\250\350\215\220\350\277\231\344\270\252\357\274\211ed2k://|file|cn_windows_7_ultimate_with_sp1_x86_dvd_u_677486.iso|2653276160|7503E4B9B8738DFCB95872445C72AEFB|/</span></p>\n"
|
|
||||||
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:10pt;\">\357\274\210\345\246\202\346\236\234\344\270\213\350\275\275\350\277\231\344\270\252\357\274\214\347\263\273\347\273\237\347\211\210\346\234\254\351\200\211\347\254\254\344\272\214\351\241\271\357\274\211ed2k://|file|cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso|3420557312|B58548681854236C7939003B583A8078|/</span></p>\n"
|
|
||||||
"<hr /></body></html>", nullptr));
|
|
||||||
tabWidget->setTabText(tabWidget->indexOf(tab), QCoreApplication::translate("MainWindow", "\350\256\276\347\275\256", nullptr));
|
|
||||||
#if QT_CONFIG(tooltip)
|
|
||||||
tabWidget->setTabToolTip(tabWidget->indexOf(tab), QCoreApplication::translate("MainWindow", "\350\256\276\347\275\256", nullptr));
|
|
||||||
#endif // QT_CONFIG(tooltip)
|
|
||||||
textBrowser->setHtml(QCoreApplication::translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
|
||||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
|
||||||
"p, li { white-space: pre-wrap; }\n"
|
|
||||||
"</style></head><body style=\" font-family:'Noto Sans CJK SC'; font-size:10.5pt; font-weight:400; font-style:normal;\">\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:26pt; font-weight:600;\">\347\273\231\345\260\217\347\231\275\347\232\204\344\270\200\346\256\265\350\257\235</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\345\205\266\345\256\236\346\234\254\350\264\250\344\270\212\350\267\221\345\256\214\345\256\211\350\243\205\347\250\213\345\272\217\345\260\261\346\262\241\346\234\211\347\204\266\345\220\216\344\272\206\357\274\214\351\241\266\345\244\232\345\246\202\346\236\234\346\203\263\350\246\201"
|
|
||||||
"\350\277\220\350\241\214\350\210\222\346\234\215\344\270\200\347\202\271\347\202\271\357\274\214\345\217\257\344\273\245\345\256\211\350\243\205\345\212\240\345\274\272\345\212\237\350\203\275\357\274\214\347\233\264\346\216\245\346\213\211\345\210\260\346\234\200\345\272\225\344\270\213\347\234\213\345\260\261\345\217\257\344\273\245\344\272\206</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\345\246\202\346\236\234\347\210\261\346\212\230\350\205\276\347\232\204\350\257\235\357\274\214\344\270\213\351\235\242\347\232\204\351\203\275\347\234\213\347\234\213\344\271\237\346\227\240\346\211\200\350\260\223\347\232\204\357\274\214\346\203\263\347\234\213\345\276\200\344\270\213\347\277\273\345\260\261\345\217\257\344\273\245\344\272\206</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\357\274\210\345\246\202\346\236\234\351\274\240\346\240\207\350\242\253"
|
|
||||||
"\351\224\201\345\256\232\345\210\260\351\207\214\351\235\242\344\272\206\346\214\211\344\270\213\351\224\256\347\233\230\345\217\263\350\276\271\347\232\204\342\200\234Ctrl\342\200\235\351\224\256\345\260\261\345\217\257\344\273\245\344\272\206\357\274\211</p>\n"
|
|
||||||
"<hr />\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p sty"
|
|
||||||
"le=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-b"
|
|
||||||
"ottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:26pt; font-weight:600;\"><br /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:26pt; font-weight:600;\">\345\256\211\350\243\205\346\230\257\345\220\246\351\234\200\350\246\201\344\272\272\345\267\245\350\277\233\350\241\214\346\223\215\344\275"
|
|
||||||
"\234\357\274\237</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\345\246\202\346\236\234\346\202\250\344\270\213\350\275\275\347\232\204\351\225\234\345\203\217\346\234\254\347\250\213\345\272\217\346\224\257\346\214\201\357\274\214\345\210\231\345\244\247\351\203\250\345\210\206\344\270\215\347\224\250\357\274\214\345\267\262\347\273\217\345\260\275\351\207\217\347\234\201\345\216\273\344\272\206\350\256\251\346\226\260\346\211\213\345\244\264\347\226\274\347\232\204\350\231\232\346\213\237\346\234\272\347\250\213\345\272\217\345\256\211\350\243\205\357\274\214\345\210\233\345\273\272\343\200\201\350\256\276\347\275\256\350\231\232\346\213\237\346\234\272\357\274\214\350\231\232\346\213\237\347\243\201\347\233\230\345\210\206\345\214\272\357\274\214\345\257\273\346\211\276\345\216\237\347\211\210\351\225\234\345\203\217\346\226\207\344\273\266\347\255\211\345\206\205\345\256\271</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-"
|
|
||||||
"bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712191756.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\344\275\206\346\234\211\344\272\233\350\256\276\347\275\256\344\276\235\346\227\247\351\234\200\350\246\201\344\272\272\345\267\245\350\207\252\350\241\214\350\256\276\347\275\256\357\274\214\344\276\213\345\246\202\345\256\211\350\243\205\347\225\214\351\235\242\345\257\206\351\222\245\347\232\204\350\276\223\345\205\245\343\200\201\347\263\273\347\273\237\347\232\204\346\277\200\346\264\273\357\274\210\346\266\211\345\217\212\347\211\210\346\235\203\351\227\256\351\242\230\357\274\214\344\270\215\344\274\232\350\200\203\350\231\221\347\234\201\347\225\245\357\274\211\343\200\201\345\242\236\345\274\272\345\212\237\350\203\275\347\232\204\345\256\211\350\243\205\343\200\201\351\234\200"
|
|
||||||
"\350\246\201\344\275\277\347\224\250\347\232\204\350\275\257\344\273\266\347\255\211\347\255\211</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712192850.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712193527.png\" /></p>\n"
|
|
||||||
"<hr />\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:26pt; font-weight:600;\">\344\273\200\344\271\210\346\240\267\347\232\204\351\225\234\345\203\217\346\234\254\347\250\213\345\272\217\357\274\210\345\217\257\350\203\275\357\274\211\344\270\215\346\224\257\346\214\201\350\207\252\345\212\250\345\256\211\350\243\205\357\274\237"
|
|
||||||
"</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\351\235\236 Windows 7 \351\225\234\345\203\217\345\217\257\350\203\275\344\270\215\346\224\257\346\214\201\350\207\252\345\212\250\345\256\211\350\243\205\357\274\210\347\272\257\347\232\204 Windows 7 \344\274\201\344\270\232\347\211\210\351\225\234\345\203\217\345\217\257\350\203\275\344\270\215\346\224\257\346\214\201\350\207\252\345\212\250\345\256\211\350\243\205\357\274\211\357\274\214\344\270\215\344\277\235\350\257\201\347\263\273\347\273\237\350\203\275\350\207\252\345\212\250\345\256\211\350\243\205\346\210\220\345\212\237\357\274\214\344\276\213\345\246\202 Windows XP\343\200\201Windows 10\343\200\201Deepin\343\200\201Ubuntu \347\255\211\347\255\211</p>\n"
|
|
||||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p>\n"
|
|
||||||
"<hr />\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bott"
|
|
||||||
"om:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:26pt; font-weight:600;\">\351\273\230\350\256\244\347\232\204\350\231\232\346\213\237\346\234\272\350\256\276\347\275\256\344\270\215\344\271\240\346\203\257\346\200\216\344\271\210\346\224\271\357\274\237</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\">1\343\200\201\346\211\223\345\274\200\345\220\257\345\212\250\345\231\250\357\274\214\346\211\223\345\274\200 Oracle VM VirtualBox \347\250\213\345\272\217</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\">2\343\200\201\351\200\211\346\213\251\345\220\215\345\255\227\344\270\272\342\200\234Windows\342\200\235\347\232\204\350\231\232\346\213\237\346\234\272\357\274\214\347\204\266\345\220\216\345\234\250\345\217\263\350\276"
|
|
||||||
"\271\347\202\271\345\207\273\350\256\276\347\275\256</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Manager_20220712223602.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\">3\343\200\201\345\234\250\350\277\231\351\207\214\344\277\256\346\224\271\345\215\263\345\217\257</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox_20220712223705.png\" /></p>\n"
|
|
||||||
"<hr />\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:26pt; font-weight:600;\">\345\256\211\350\243\205\345\212"
|
|
||||||
"\240\345\274\272\345\212\237\350\203\275\346\234\211\344\273\200\344\271\210\345\245\275\345\244\204\357\274\237</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">1\343\200\201\346\224\257\346\214\201\351\274\240\346\240\207\350\207\252\347\224\261\344\273\216\350\231\232\346\213\237\346\234\272\345\222\214\345\256\236\344\275\223\346\234\272\345\210\207\346\215\242</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">2\343\200\201\346\224\257\346\214\201\350\231\232\346\213\237\346\234\272\346\240\271\346\215\256\347\252\227\345\217\243\345\244\247\345\260\217\350\207\252\345\212\250\350\256\276\347\275\256\345\210\206\350\276\250\347\216\207</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">3\343\200\201\346\224\257\346\214\201\346\226\207\344\273\266\345\205\261\344\272\253"
|
|
||||||
"\343\200\201\345\211\252\345\210\207\346\235\277\345\205\261\344\272\253\343\200\201\346\226\207\344\273\266\346\213\226\346\224\276</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">4\343\200\201\346\224\257\346\214\201\346\227\240\347\274\235\346\250\241\345\274\217</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_\351\200\211\346\213\251\345\214\272\345\237\237_20220712224639.png\" /></p>\n"
|
|
||||||
"<hr />\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:26pt; font-weight:600;\">\345\246\202\344\275\225\345\256\211\350\243\205\345\212\240\345\274\272\345\212\237\350\203\275\357\274\237</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-bloc"
|
|
||||||
"k-indent:0; text-indent:0px;\">1\343\200\201\347\202\271\345\207\273\342\200\234\350\256\276\345\244\207\342\200\235=\343\200\213\342\200\234\345\212\240\345\274\272\345\212\237\350\203\275\342\200\235</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276_VirtualBox Machine_20220712142929.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">2\343\200\201\346\211\223\345\274\200\342\200\234\350\256\241\347\256\227\346\234\272\342\200\235\357\274\214\346\211\276\345\210\260\345\220\215\344\270\272\342\200\234VirtualBox Guest Additions\342\200\235\347\232\204\345\205\211\347\233\230\357\274\214\345\217\214\345\207\273\350\277\233\345\205\245\357\274\214\347\204\266\345\220\216\345\217\214\345\207\273\346\211\223\345\274\200\345\220\215\344\270\272\342\200\234VBoxWindowsAdditions\342\200\235\347\232\204\347\250\213"
|
|
||||||
"\345\272\217</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712143006.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">3\343\200\201\345\234\250\345\274\271\345\207\272\347\232\204\347\225\214\351\235\242\347\202\271\345\207\273\342\200\234\346\230\257\342\200\235</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712143018.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">4\343\200\201\344\270\200\347\233\264\347\202\271\342\200\234Next\342\200\235</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-b"
|
|
||||||
"ottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712143029.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machine_20220712143037.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\">5\343\200\201\345\205\250\351\203\250\351\200\211\346\213\251\357\274\214\347\204\266\345\220\216\347\202\271\345\207\273\342\200\234Install\342\200\235\350\277\233\350\241\214\345\256\211\350\243\205</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Ma"
|
|
||||||
"chine_20220712143044.png\" /></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\">6\343\200\201\347\255\211\345\276\205\345\256\211\350\243\205\345\256\214\346\257\225\345\220\216\357\274\214\351\200\211\346\213\251\342\200\234Reboot now\342\200\235\347\204\266\345\220\216\347\202\271\345\207\273\342\200\234Finish\342\200\235\351\207\215\345\220\257\346\255\244\350\231\232\346\213\237\346\234\272\345\215\263\345\217\257\345\256\211\350\243\205\346\210\220\345\212\237\357\274\210\351\200\211\346\213\251\342\200\234Reboot now\342\200\235\345\271\266\347\202\271\342\200\234Finish\342\200\235\344\274\232\350\207\252\345\212\250\351\207\215\346\226\260\345\220\257\345\212\250\357\274\211</span></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><img src=\":/picture/\346\210\252\345\233\276/\346\210\252\345\233\276_VirtualBox Machi"
|
|
||||||
"ne_20220712143103.png\" /></p></body></html>", nullptr));
|
|
||||||
tabWidget->setTabText(tabWidget->indexOf(tab_3), QCoreApplication::translate("MainWindow", "\345\256\211\350\243\205/\344\275\277\347\224\250\345\270\256\345\212\251", nullptr));
|
|
||||||
label_3->setText(QString());
|
|
||||||
textBrowser_2->setHtml(QCoreApplication::translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
|
||||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
|
||||||
"p, li { white-space: pre-wrap; }\n"
|
|
||||||
"</style></head><body style=\" font-family:'Noto Sans CJK SC'; font-size:10.5pt; font-weight:400; font-style:normal;\">\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\346\255\244\344\270\272 wine \350\277\220\350\241\214\345\231\250\351\231\204\345\261\236\347\273\204\344\273\266\357\274\210\350\231\275\347\204\266\350\277\235\350\203\214\344\272\206\342\200\234Wine Is Not An Emulator\342\200\235<Wine \344\270\215\346\230\257\344\270\200\344\270\252\346\250\241\346\213\237\345\231\250>\347\232\204\345\216\237\346\204\217\357\274\211\357\274\214\346\227\250\345\234\250\350\203\275\346\233\264\345\212\240\345\256\214\347\276\216\343\200\201\347\256\200\345\215\225\347\232\204\350\277\220\350\241\214 Windows \345"
|
|
||||||
"\272\224\347\224\250</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\346\234\254\347\250\213\345\272\217\345\237\272\344\272\216 C++ Qt\343\200\201Python \345\222\214 Virtualbox \345\210\266\344\275\234\357\274\214\351\200\232\350\277\207\350\277\220\350\241\214\345\256\211\350\243\205 Windows \346\223\215\344\275\234\347\263\273\347\273\237\347\232\204\350\231\232\346\213\237\346\234\272\345\256\236\347\216\260\345\234\250 Linux \350\277\220\350\241\214 Windows exe \347\250\213\345\272\217\347\232\204\345\212\237\350\203\275\343\200\202</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\345\237\272\344\272\216 GPL V3 \345\215\217\350\256\256\345\274\200\346\272\220</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\351\241\271\347\233\256\345\234\260\345\235\200\357\274\232"
|
|
||||||
"</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"> Gitee\357\274\232<a href=\"https://gitee.com/gfdgd-xi/deep-wine-runner\"><span style=\" font-size:11pt; text-decoration: underline; color:#0082fa;\">https://gitee.com/gfdgd-xi/deep-wine-runner</span></a></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"> Github\357\274\232<a href=\"https://github.com/gfdgd-xi/deep-wine-runner\"><span style=\" font-size:11pt; text-decoration: underline; color:#0082fa;\">https://github.com/gfdgd-xi/deep-wine-runner</span></a></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"> Gitlink\357\274\232<a href=\"https://gitlink.org.cn/gfdgd_xi/deep-wine-runner\"><span style=\" font-size:11pt; text-decoration: underline; color:#0082fa;\">https://gitlink.org.cn/gfdgd_xi/deep-wine-runner</span></a"
|
|
||||||
"></p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\346\255\244\347\273\204\344\273\266\344\271\237\346\234\211\351\235\236\345\270\270\345\244\247\347\232\204\347\274\272\347\202\271\357\274\214\345\260\261\346\230\257\347\233\270\346\257\224\344\272\216 Wine\357\274\214\344\274\232\351\234\200\350\246\201\345\215\240\347\224\250\345\244\247\351\207\217\347\232\204\347\251\272\351\227\264\343\200\201\345\256\211\350\243\205\351\234\200\350\246\201\345\244\247\351\207\217\347\232\204\346\227\266\351\227\264\343\200\201\346\237\220\344\272\233\346\203\205\345\206\265\344\270\213\351\234\200\350\246\201\347\233\270\346\257\224\344\272\216 Wine \351\234\200\350\246\201\346\266\210\350\200\227\346\233\264\345\244\232\347\232\204\347\263\273\347\273\237\350\265\204\346\272\220\357\274\214\344\275\206\345\217\257\344\273\245\346\233\264\345\212\240\345\256\214\347\276\216\343\200\201\346\265\201\347\225\205\347\232\204\350\277\220\350\241"
|
|
||||||
"\214 Windows \345\272\224\347\224\250\357\274\214\344\274\232\345\260\275\351\207\217\345\207\217\345\260\221\345\233\240\344\270\272\347\274\272\345\260\221\346\210\226\346\234\252\345\256\236\347\216\260\345\257\274\350\207\264\347\232\204 Windows exe \347\250\213\345\272\217\350\277\220\350\241\214\345\274\202\345\270\270</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\350\257\245\347\273\204\344\273\266\345\210\266\344\275\234\350\200\205\357\274\232RacoonGX \345\233\242\351\230\237\357\274\214By gfdgd xi\343\200\201\344\270\272\344\273\200\344\271\210\346\202\250\344\270\215\345\226\234\346\254\242\347\206\212\345\207\272\346\262\241\345\222\214\351\230\277\345\270\203\345\221\242</p>\n"
|
|
||||||
"<hr />\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">\345\217\202\350\200\203\346\226\207\347\214\256\357\274\232</p>\n"
|
|
||||||
"<p style=\" margin-top:0px; margin-bott"
|
|
||||||
"om:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:'Droid Sans Mono','monospace','monospace'; font-size:11pt; color:#6a9955;\">https://juejin.cn/post/7080484519328874510</span></p></body></html>", nullptr));
|
|
||||||
tabWidget->setTabText(tabWidget->indexOf(tab_2), QCoreApplication::translate("MainWindow", "\345\205\263\344\272\216", nullptr));
|
|
||||||
#if QT_CONFIG(statustip)
|
|
||||||
CPUValue->setStatusTip(QString());
|
|
||||||
#endif // QT_CONFIG(statustip)
|
|
||||||
} // retranslateUi
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
namespace Ui {
|
|
||||||
class MainWindow: public Ui_MainWindow {};
|
|
||||||
} // namespace Ui
|
|
||||||
|
|
||||||
QT_END_NAMESPACE
|
|
||||||
|
|
||||||
#endif // UI_MAINWINDOW_H
|
|
@ -5,7 +5,7 @@
|
|||||||
vbox::vbox(QString name, QString managerPath) {
|
vbox::vbox(QString name, QString managerPath) {
|
||||||
this->name = name;
|
this->name = name;
|
||||||
this->managerPath = managerPath;
|
this->managerPath = managerPath;
|
||||||
Command command = Command();
|
//Command command = Command();
|
||||||
this->vboxVersion = Command().GetCommand("'" + managerPath + "' -v");
|
this->vboxVersion = Command().GetCommand("'" + managerPath + "' -v");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
BIN
VM-source/vbox.o
BIN
VM-source/vbox.o
Binary file not shown.
253
getwinebottle.py
Executable file
253
getwinebottle.py
Executable file
@ -0,0 +1,253 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# 本来是用C++写的,但在非deepin/UOS编译/运行就是下载不了https文件,只能用python重写
|
||||||
|
#########################################################################
|
||||||
|
# 作者:gfdgd xi、为什么您不喜欢熊出没和阿布
|
||||||
|
# 版本:2.4.0
|
||||||
|
# 感谢:感谢 deepin-wine 团队,提供了 deepin-wine 给大家使用,让我能做这个程序
|
||||||
|
# 基于 Python3 的 PyQt5 构建
|
||||||
|
#########################################################################
|
||||||
|
#################
|
||||||
|
# 引入所需的库
|
||||||
|
#################
|
||||||
|
import os
|
||||||
|
import shutil
|
||||||
|
import random
|
||||||
|
import sys
|
||||||
|
import json
|
||||||
|
import traceback
|
||||||
|
import requests
|
||||||
|
programPath = os.path.split(os.path.realpath(__file__))[0] # 返回 string
|
||||||
|
sys.path.append(f"{programPath}/../")
|
||||||
|
from Model import *
|
||||||
|
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||||
|
programPath = os.path.split(os.path.realpath(__file__))[0] # 返回 string
|
||||||
|
# UI 布局(自动生成)
|
||||||
|
class Ui_MainWindow(object):
|
||||||
|
def setupUi(self, MainWindow):
|
||||||
|
MainWindow.setObjectName("MainWindow")
|
||||||
|
MainWindow.resize(693, 404)
|
||||||
|
self.centralWidget = QtWidgets.QWidget(MainWindow)
|
||||||
|
self.verticalLayout = QtWidgets.QGridLayout()
|
||||||
|
self.verticalLayout.setSpacing(6)
|
||||||
|
self.verticalLayout.setObjectName("verticalLayout")
|
||||||
|
self.addButton = QtWidgets.QPushButton(self.centralWidget)
|
||||||
|
self.addButton.setObjectName("addButton")
|
||||||
|
self.verticalLayout.addWidget(self.addButton, 1, 0)
|
||||||
|
self.internetWineList = QtWidgets.QListView(self.centralWidget)
|
||||||
|
self.internetWineList.setObjectName("internetWineList")
|
||||||
|
self.verticalLayout.addWidget(self.internetWineList, 0, 0)
|
||||||
|
self.centralWidget.setLayout(self.verticalLayout)
|
||||||
|
MainWindow.setCentralWidget(self.centralWidget)
|
||||||
|
# 菜单栏
|
||||||
|
_translate = QtCore.QCoreApplication.translate
|
||||||
|
self.menu = MainWindow.menuBar()
|
||||||
|
self.changeSources = self.menu.addMenu(_translate("MainWindow", "更换源"))
|
||||||
|
self.gitlinkAction = QtWidgets.QAction(_translate("MainWindow", "Gitlink 源(推荐)"))
|
||||||
|
self.ipv6Action = QtWidgets.QAction(_translate("MainWindow", "备用源(只支持 IPv6 用户)"))
|
||||||
|
self.localAction = QtWidgets.QAction(_translate("MainWindow", "本地测试源(127.0.0.1)"))
|
||||||
|
self.changeSources.addAction(self.gitlinkAction)
|
||||||
|
self.changeSources.addAction(self.ipv6Action)
|
||||||
|
self.changeSources.addAction(self.localAction)
|
||||||
|
for i in [self.gitlinkAction, self.ipv6Action, self.localAction]:
|
||||||
|
i.setCheckable(True)
|
||||||
|
self.gitlinkAction.setChecked(True)
|
||||||
|
self.changeSourcesGroup = QtWidgets.QActionGroup(MainWindow)
|
||||||
|
self.changeSourcesGroup.addAction(self.gitlinkAction)
|
||||||
|
self.changeSourcesGroup.addAction(self.ipv6Action)
|
||||||
|
self.changeSourcesGroup.addAction(self.localAction)
|
||||||
|
|
||||||
|
self.retranslateUi(MainWindow)
|
||||||
|
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||||
|
|
||||||
|
def retranslateUi(self, MainWindow):
|
||||||
|
_translate = QtCore.QCoreApplication.translate
|
||||||
|
MainWindow.setWindowTitle(_translate("MainWindow", "下载容器"))
|
||||||
|
self.addButton.setText(_translate("MainWindow", "下载"))
|
||||||
|
|
||||||
|
def ChangeSources():
|
||||||
|
global urlSources
|
||||||
|
global internetWineSource
|
||||||
|
sources = [ui.gitlinkAction, ui.ipv6Action, ui.localAction]
|
||||||
|
for i in range(0, len(sources)):
|
||||||
|
if sources[i].isChecked():
|
||||||
|
urlSources = internetWineSourceList[i]
|
||||||
|
internetWineSource = internetWineSourceList[i]
|
||||||
|
# 读取信息
|
||||||
|
ReadInternetInformation()
|
||||||
|
break
|
||||||
|
print(urlSources)
|
||||||
|
|
||||||
|
# 下面内容均翻译自 C++ 版本
|
||||||
|
def ReadInternetInformation():
|
||||||
|
global internetJsonList
|
||||||
|
# C++ 版本是用 curl 的,考虑到 Python 用 requests 反而方便,于是不用 curl
|
||||||
|
try:
|
||||||
|
internetJsonList = json.loads(requests.get(f"{internetWineSource}/information.json").text)
|
||||||
|
except:
|
||||||
|
QtWidgets.QMessageBox.critical(window, "错误", "无法连接服务器!")
|
||||||
|
return
|
||||||
|
nmodel = QtGui.QStandardItemModel(window)
|
||||||
|
for i in internetJsonList:
|
||||||
|
item = QtGui.QStandardItem(i[0])
|
||||||
|
nmodel.appendRow(item)
|
||||||
|
ui.internetWineList.setModel(nmodel)
|
||||||
|
|
||||||
|
class DownloadThread(QtCore.QThread):
|
||||||
|
MessageBoxInfo = QtCore.pyqtSignal(str)
|
||||||
|
MessageBoxError = QtCore.pyqtSignal(str)
|
||||||
|
ChangeDialog = QtCore.pyqtSignal(QtWidgets.QProgressDialog, int, int, int)
|
||||||
|
Finish = QtCore.pyqtSignal()
|
||||||
|
def __init__(self, progressDialog: QtWidgets.QProgressDialog,
|
||||||
|
url: str, savePath: str, fileName: str, view: QtWidgets.QListView, deleteZip: bool,
|
||||||
|
unzip: bool, localList) -> None:
|
||||||
|
self.dialog = progressDialog
|
||||||
|
self.fileUrl = url
|
||||||
|
self.fileSavePath = savePath
|
||||||
|
self.fileSaveName = fileName
|
||||||
|
self.localView = view
|
||||||
|
self.downloadDeleteZip = deleteZip
|
||||||
|
self.downloadUnzip = unzip
|
||||||
|
self.localJsonList = localList
|
||||||
|
super().__init__()
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
try:
|
||||||
|
# 创建文件夹
|
||||||
|
dir = QtCore.QDir()
|
||||||
|
savePath = f"{programPath}/{self.fileSaveName}"
|
||||||
|
# 文件下载
|
||||||
|
timeout = 0
|
||||||
|
f = requests.get(self.fileUrl, stream=True)
|
||||||
|
allSize = int(f.headers["content-length"]) # 文件总大小
|
||||||
|
bytesRead = 0
|
||||||
|
with open(savePath, "wb") as filePart:
|
||||||
|
for chunk in f.iter_content(chunk_size=1024):
|
||||||
|
if chunk:
|
||||||
|
#progressbar.update(int(part / show))
|
||||||
|
filePart.write(chunk)
|
||||||
|
bytesRead += 1024
|
||||||
|
self.ChangeDialog.emit(self.dialog, int(bytesRead / allSize * 100), int(bytesRead / 1024 / 1024), int(allSize / 1024 / 1024))
|
||||||
|
# 写入配置文件
|
||||||
|
rfile = open(f"{programPath}/winelist.json", "r")
|
||||||
|
list = json.loads(rfile.read())
|
||||||
|
rfile.close()
|
||||||
|
# C++ 版注释:不直接用 readwrite 是因为不能覆盖写入
|
||||||
|
file = open(f"{programPath}/winelist.json", "w")
|
||||||
|
list.append(self.fileSaveName.replace(".7z", ""))
|
||||||
|
file.write(json.dumps(list))
|
||||||
|
file.close()
|
||||||
|
# 读取配置文件
|
||||||
|
self.ReadLocalInformation()
|
||||||
|
self.localJsonList = list
|
||||||
|
# 解压文件
|
||||||
|
shellCommand = ""
|
||||||
|
if self.downloadUnzip:
|
||||||
|
path = f"{programPath}/{self.fileSaveName.replace('.7z', '')}"
|
||||||
|
shellCommand += f"""mkdir -p \"{path}\"
|
||||||
|
7z x -y \"{savePath}\" -o\"{path}\"
|
||||||
|
"""
|
||||||
|
if self.downloadDeleteZip:
|
||||||
|
shellCommand += f"rm -rf \"{savePath}\"\n"
|
||||||
|
shellFile = open("/tmp/depein-wine-runner-wine-install.sh", "w")
|
||||||
|
shellFile.write(shellCommand)
|
||||||
|
shellFile.close()
|
||||||
|
#process = QtCore.QProcess()
|
||||||
|
#command = ["deepin-terminal", "-e", "bash", "/tmp/depein-wine-runner-wine-install.sh"]
|
||||||
|
#process.start(f"{programPath}/../launch.sh", command)
|
||||||
|
#process.waitForFinished()
|
||||||
|
OpenTerminal("bash /tmp/depein-wine-runner-wine-install.sh")
|
||||||
|
self.Finish.emit()
|
||||||
|
except:
|
||||||
|
traceback.print_exc()
|
||||||
|
self.MessageBoxError.emit(traceback.format_exc())
|
||||||
|
|
||||||
|
def MessageBoxInfo(info):
|
||||||
|
QtWidgets.QMessageBox.information(window, "提示", info)
|
||||||
|
|
||||||
|
def MessageBoxError(info):
|
||||||
|
QtWidgets.QMessageBox.critical(window, "错误", info)
|
||||||
|
|
||||||
|
def ChangeDialog(dialog: QtWidgets.QProgressDialog, value, downloadBytes, totalBytes):
|
||||||
|
dialog.setValue(value)
|
||||||
|
dialog.setLabelText(f"{downloadBytes}MB/{totalBytes}MB")
|
||||||
|
|
||||||
|
def DownloadFinish():
|
||||||
|
ui.centralWidget.setEnabled(True)
|
||||||
|
|
||||||
|
class QT:
|
||||||
|
thread = None
|
||||||
|
|
||||||
|
def on_addButton_clicked():
|
||||||
|
choose = ui.internetWineList.currentIndex().row()
|
||||||
|
if choose < 0:
|
||||||
|
QtWidgets.QMessageBox.information(window, "提示", "您未选中任何项,无法继续")
|
||||||
|
return
|
||||||
|
downloadName = internetJsonList[choose][1]
|
||||||
|
ReadLocalInformation()
|
||||||
|
for i in localJsonList:
|
||||||
|
if i == internetJsonList[choose][0]:
|
||||||
|
QtWidgets.QMessageBox.information(window, "提示", "您已经安装了这个Wine了!无需重复安装!")
|
||||||
|
return
|
||||||
|
downloadUrl = internetWineSource + downloadName
|
||||||
|
dialog = QtWidgets.QProgressDialog()
|
||||||
|
cancel = QtWidgets.QPushButton("取消")
|
||||||
|
cancel.setDisabled(True)
|
||||||
|
dialog.setWindowIcon(QtGui.QIcon(f"{programPath}/../deepin-wine-runner.svg"))
|
||||||
|
dialog.setCancelButton(cancel)
|
||||||
|
dialog.setWindowTitle(f"正在下载“{internetJsonList[choose][0]}”")
|
||||||
|
QT.thread = DownloadThread(
|
||||||
|
dialog,
|
||||||
|
downloadUrl,
|
||||||
|
"",
|
||||||
|
internetJsonList[choose][1],
|
||||||
|
ui.localWineList,
|
||||||
|
ui.deleteZip.isChecked(),
|
||||||
|
not ui.unzip.isChecked(),
|
||||||
|
localJsonList
|
||||||
|
)
|
||||||
|
QT.thread.MessageBoxInfo.connect(MessageBoxInfo)
|
||||||
|
QT.thread.MessageBoxError.connect(MessageBoxError)
|
||||||
|
QT.thread.ChangeDialog.connect(ChangeDialog)
|
||||||
|
QT.thread.Finish.connect(DownloadFinish)
|
||||||
|
ui.centralWidget.setDisabled(True)
|
||||||
|
QT.thread.start()
|
||||||
|
|
||||||
|
# 获取当前语言
|
||||||
|
def get_now_lang()->"获取当前语言":
|
||||||
|
return os.getenv('LANG')
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
internetJsonList = []
|
||||||
|
internetWineSourceList = [
|
||||||
|
"https://code.gitlink.org.cn/gfdgd_xi/wine-bottle-library/raw/branch/master/",
|
||||||
|
"http://gfdgdxi.msns.cn/wine-bottle-library/", # 备用源,纯 IPv6 源
|
||||||
|
"http://127.0.0.1/wine-bottle-library/" # 本地测试源
|
||||||
|
]
|
||||||
|
internetWineSource = internetWineSourceList[0]
|
||||||
|
app = QtWidgets.QApplication(sys.argv)
|
||||||
|
# 读取翻译
|
||||||
|
if not get_now_lang() == "zh_CN.UTF-8":
|
||||||
|
trans = QtCore.QTranslator()
|
||||||
|
trans.load(f"{programPath}/../LANG/installwine-en_US.qm")
|
||||||
|
app.installTranslator(trans)
|
||||||
|
# 窗口构建
|
||||||
|
window = QtWidgets.QMainWindow()
|
||||||
|
ui = Ui_MainWindow()
|
||||||
|
window.setWindowIcon(QtGui.QIcon(f"{programPath}/../deepin-wine-runner.svg"))
|
||||||
|
ui.setupUi(window)
|
||||||
|
window.show()
|
||||||
|
# 连接信号
|
||||||
|
ui.addButton.clicked.connect(on_addButton_clicked)
|
||||||
|
#ui.delButton.clicked.connect(on_delButton_clicked)
|
||||||
|
#ui.addOtherWine.clicked.connect(InstallOtherWine)
|
||||||
|
#ui.changeSourcesGroup.triggered.connect(ChangeSources)
|
||||||
|
## 加载内容
|
||||||
|
# 设置列表双击不会编辑
|
||||||
|
#ui.localWineList.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
|
||||||
|
ui.internetWineList.setEditTriggers(QtWidgets.QAbstractItemView.NoEditTriggers)
|
||||||
|
# 读取信息
|
||||||
|
ReadInternetInformation()
|
||||||
|
# 图标
|
||||||
|
ui.centralWidget.setWindowIcon(QtGui.QIcon(f"{programPath}/../deepin-wine-runner.svg"))
|
||||||
|
|
||||||
|
app.exec_()
|
@ -2427,10 +2427,10 @@ Qt 版本:{QtCore.qVersion()}
|
|||||||
<p>是由 @gfdgd xi 带头的团队,gfdgd xi开发了UEngine运行器等好用的开源软件。</p>
|
<p>是由 @gfdgd xi 带头的团队,gfdgd xi开发了UEngine运行器等好用的开源软件。</p>
|
||||||
<hr>
|
<hr>
|
||||||
<h1>友谊链接</h1>
|
<h1>友谊链接</h1>
|
||||||
<pre>星火应用商店:https://spark-app.store/
|
<pre>星火应用商店:<a href="https://spark-app.store/">https://spark-app.store/</a>
|
||||||
Deepin 官网:https://www.deepin.org
|
Deepin 官网:<a href="https://www.deepin.org">https://www.deepin.org</a>
|
||||||
Deepin 论坛:https://bbs.deepin.org
|
Deepin 论坛:<a href="https://bbs.deepin.org">https://bbs.deepin.org</a>
|
||||||
论坛:https://gfdgdxi.flarum.cloud/</pre>
|
论坛:<a href="https://bbs.racoongx.cn">https://bbs.racoongx.cn</a></pre>
|
||||||
<hr>
|
<hr>
|
||||||
<h1>©2020~{time.strftime("%Y")} By gfdgd xi、为什么您不喜欢熊出没和阿布呢,RacoonGX 团队作品</h1>'''
|
<h1>©2020~{time.strftime("%Y")} By gfdgd xi、为什么您不喜欢熊出没和阿布呢,RacoonGX 团队作品</h1>'''
|
||||||
title = "Wine 运行器 {}".format(version)
|
title = "Wine 运行器 {}".format(version)
|
||||||
|
Loading…
Reference in New Issue
Block a user