Browse Source

add testg29_win.

yuchuli 2 years ago
parent
commit
536923f2a5

+ 3 - 0
include/ivversion.h

@@ -1,8 +1,11 @@
 #ifndef IVVERSION_H
 #define IVVERSION_H
 
+#ifndef Q_OS_WIN
 #include "ivversion_def.h"   //Please use common.pri, If you don't want use ivversion_def.h can comment this line.
 
+#endif
+
 #include <iostream>
 
 #ifndef IVVERSION

+ 1 - 0
src/include/proto3/protomake.bat

@@ -0,0 +1 @@
+D:\File\grpc-master\out\third_party\protobuf\Release\protoc.exe *.proto -I=./ --cpp_out=./../msgtype/

+ 73 - 0
src/test/testg29_win/.gitignore

@@ -0,0 +1,73 @@
+# This file is used to ignore files which are generated
+# ----------------------------------------------------------------------------
+
+*~
+*.autosave
+*.a
+*.core
+*.moc
+*.o
+*.obj
+*.orig
+*.rej
+*.so
+*.so.*
+*_pch.h.cpp
+*_resource.rc
+*.qm
+.#*
+*.*#
+core
+!core/
+tags
+.DS_Store
+.directory
+*.debug
+Makefile*
+*.prl
+*.app
+moc_*.cpp
+ui_*.h
+qrc_*.cpp
+Thumbs.db
+*.res
+*.rc
+/.qmake.cache
+/.qmake.stash
+
+# qtcreator generated files
+*.pro.user*
+
+# xemacs temporary files
+*.flc
+
+# Vim temporary files
+.*.swp
+
+# Visual Studio generated files
+*.ib_pdb_index
+*.idb
+*.ilk
+*.pdb
+*.sln
+*.suo
+*.vcproj
+*vcproj.*.*.user
+*.ncb
+*.sdf
+*.opensdf
+*.vcxproj
+*vcxproj.*
+
+# MinGW generated files
+*.Debug
+*.Release
+
+# Python byte code
+*.pyc
+
+# Binaries
+# --------
+*.dll
+*.exe
+

+ 11 - 0
src/test/testg29_win/main.cpp

@@ -0,0 +1,11 @@
+#include "mainwindow.h"
+
+#include <QApplication>
+
+int main(int argc, char *argv[])
+{
+    QApplication a(argc, argv);
+    MainWindow w;
+    w.show();
+    return a.exec();
+}

+ 43 - 0
src/test/testg29_win/mainwindow.cpp

@@ -0,0 +1,43 @@
+#include "mainwindow.h"
+#include "ui_mainwindow.h"
+
+#include <QLibrary>
+#include <iostream>
+
+
+void MainWindow::LoadAPI()
+{
+    std::cout<<"Load Excel API"<<std::endl;
+    QLibrary xlib("./LogitechSteeringWheelEnginesWrapper.dll");
+    if(!xlib.load())
+    {
+        std::cout<<" load LogitechSteeringWheelEnginesWrapper fail."<<xlib.errorString().toStdString()<< std::endl;
+        return ;
+    }
+
+    LogiUpdate =(LogiUpdateFunction)xlib.resolve("LogiUpdate");
+
+    if(LogiUpdate == NULL)
+    {
+        std::cout<<" no this api."<<std::endl;
+    }
+    else
+    {
+        std::cout<<" Load API Successfully. "<<std::endl;
+    }
+}
+
+MainWindow::MainWindow(QWidget *parent)
+    : QMainWindow(parent)
+    , ui(new Ui::MainWindow)
+{
+    ui->setupUi(this);
+
+    LoadAPI();
+}
+
+MainWindow::~MainWindow()
+{
+    delete ui;
+}
+

+ 33 - 0
src/test/testg29_win/mainwindow.h

@@ -0,0 +1,33 @@
+#ifndef MAINWINDOW_H
+#define MAINWINDOW_H
+
+#include <QMainWindow>
+
+QT_BEGIN_NAMESPACE
+namespace Ui { class MainWindow; }
+QT_END_NAMESPACE
+
+
+typedef bool  (*LogiUpdateFunction)();
+
+
+class MainWindow : public QMainWindow
+{
+    Q_OBJECT
+
+public:
+    MainWindow(QWidget *parent = nullptr);
+    ~MainWindow();
+
+private:
+    Ui::MainWindow *ui;
+
+private:
+
+    LogiUpdateFunction LogiUpdate;
+
+
+private:
+    void LoadAPI();
+};
+#endif // MAINWINDOW_H

+ 22 - 0
src/test/testg29_win/mainwindow.ui

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>MainWindow</class>
+ <widget class="QMainWindow" name="MainWindow">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>800</width>
+    <height>600</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>MainWindow</string>
+  </property>
+  <widget class="QWidget" name="centralwidget"/>
+  <widget class="QMenuBar" name="menubar"/>
+  <widget class="QStatusBar" name="statusbar"/>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>

+ 31 - 0
src/test/testg29_win/testg29_win.pro

@@ -0,0 +1,31 @@
+QT       += core gui
+
+greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
+
+CONFIG += c++11
+
+# The following define makes your compiler emit warnings if you use
+# any Qt feature that has been marked deprecated (the exact warnings
+# depend on your compiler). Please consult the documentation of the
+# deprecated API in order to know how to port your code away from it.
+DEFINES += QT_DEPRECATED_WARNINGS
+
+# You can also make your code fail to compile if it uses deprecated APIs.
+# In order to do so, uncomment the following line.
+# You can also select to disable deprecated APIs only up to a certain version of Qt.
+#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
+
+SOURCES += \
+    main.cpp \
+    mainwindow.cpp
+
+HEADERS += \
+    mainwindow.h
+
+FORMS += \
+    mainwindow.ui
+
+# Default rules for deployment.
+qnx: target.path = /tmp/$${TARGET}/bin
+else: unix:!android: target.path = /opt/$${TARGET}/bin
+!isEmpty(target.path): INSTALLS += target