From 72ce381c173eb0d382b446193e8903aa22bf815d Mon Sep 17 00:00:00 2001 From: gfdgd_xi <3025613752@qq.com> Date: Sun, 5 Nov 2023 13:09:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9Windows=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E5=99=A8=E6=8F=90=E7=A4=BA=E6=96=87=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .qtc_clangd/compile_commands.json | 172 +++++++++++++++--------------- buildvbox.cpp | 82 ++++++++++---- mainwindow.cpp | 3 + mainwindow.ui | 17 ++- qemu.cpp | 3 + qemu.h | 1 + test-kvm.asm | 88 +++++++++++++++ test-kvm.asm.bin | Bin 0 -> 512 bytes vbox.cpp | 3 + vbox.h | 2 +- 10 files changed, 264 insertions(+), 107 deletions(-) create mode 100644 test-kvm.asm create mode 100644 test-kvm.asm.bin diff --git a/.qtc_clangd/compile_commands.json b/.qtc_clangd/compile_commands.json index 5f143b5..cb25512 100644 --- a/.qtc_clangd/compile_commands.json +++ b/.qtc_clangd/compile_commands.json @@ -7,7 +7,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -77,7 +77,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -147,7 +147,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -217,7 +217,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -287,7 +287,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -357,7 +357,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -427,7 +427,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -497,7 +497,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -567,7 +567,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -637,7 +637,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -707,7 +707,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -777,7 +777,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -847,7 +847,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -917,7 +917,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -987,7 +987,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -1057,77 +1057,7 @@ "-I", "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", - "-nostdinc", - "-nostdinc++", - "-pipe", - "-std=gnu++11", - "-Wall", - "-Wextra", - "-D_REENTRANT", - "-fPIC", - "-fsyntax-only", - "-m64", - "--target=x86_64-linux-gnu", - "-DQ_CREATOR_RUN", - "-DQT_DEPRECATED_WARNINGS", - "-DQT_NO_DEBUG", - "-DQT_WIDGETS_LIB", - "-DQT_GUI_LIB", - "-DQT_NETWORK_LIB", - "-DQT_CORE_LIB", - "-I", - "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source", - "-I", - "/usr/include/x86_64-linux-gnu/qt5", - "-I", - "/usr/include/x86_64-linux-gnu/qt5/QtWidgets", - "-I", - "/usr/include/x86_64-linux-gnu/qt5/QtGui", - "-I", - "/usr/include/x86_64-linux-gnu/qt5/QtNetwork", - "-I", - "/usr/include/x86_64-linux-gnu/qt5/QtCore", - "-I", - "/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++", - "-isystem", - "/usr/include/c++/11", - "-isystem", - "/usr/include/x86_64-linux-gnu/c++/11", - "-isystem", - "/usr/include/c++/11/backward", - "-isystem", - "/usr/local/include", - "-isystem", - "/usr/lib/llvm-13/lib/clang/13.0.1/include", - "-isystem", - "/usr/include/x86_64-linux-gnu", - "-isystem", - "/usr/include", - "-fmessage-length=0", - "-fdiagnostics-show-note-include-stack", - "-fretain-comments-from-system-headers", - "-fmacro-backtrace-limit=0", - "-ferror-limit=1000", - "-x", - "c++-header", - "-Wno-unknown-pragmas", - "-Wno-unknown-warning-option", - "-Wno-documentation-unknown-command", - "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/ui_mainwindow.h" - ], - "directory": "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/.qtc_clangd", - "file": "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/ui_mainwindow.h" -}, -{ - "arguments": [ - "clang", - "-I", - "/usr/share/qtcreator/cplusplus/wrappedQtHeaders", - "-I", - "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", - "-I", - "/tmp/QtCreator-NXqKOr/clang-uiheader-YSsUJt", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", "-nostdinc", "-nostdinc++", "-pipe", @@ -1188,5 +1118,75 @@ ], "directory": "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/.qtc_clangd", "file": "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/ui_qemusetting.h" +}, +{ + "arguments": [ + "clang", + "-I", + "/usr/share/qtcreator/cplusplus/wrappedQtHeaders", + "-I", + "/usr/share/qtcreator/cplusplus/wrappedQtHeaders/QtCore", + "-I", + "/tmp/QtCreator-GlmWVk/clang-uiheader-woUjcu", + "-nostdinc", + "-nostdinc++", + "-pipe", + "-std=gnu++11", + "-Wall", + "-Wextra", + "-D_REENTRANT", + "-fPIC", + "-fsyntax-only", + "-m64", + "--target=x86_64-linux-gnu", + "-DQ_CREATOR_RUN", + "-DQT_DEPRECATED_WARNINGS", + "-DQT_NO_DEBUG", + "-DQT_WIDGETS_LIB", + "-DQT_GUI_LIB", + "-DQT_NETWORK_LIB", + "-DQT_CORE_LIB", + "-I", + "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source", + "-I", + "/usr/include/x86_64-linux-gnu/qt5", + "-I", + "/usr/include/x86_64-linux-gnu/qt5/QtWidgets", + "-I", + "/usr/include/x86_64-linux-gnu/qt5/QtGui", + "-I", + "/usr/include/x86_64-linux-gnu/qt5/QtNetwork", + "-I", + "/usr/include/x86_64-linux-gnu/qt5/QtCore", + "-I", + "/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++", + "-isystem", + "/usr/include/c++/11", + "-isystem", + "/usr/include/x86_64-linux-gnu/c++/11", + "-isystem", + "/usr/include/c++/11/backward", + "-isystem", + "/usr/local/include", + "-isystem", + "/usr/lib/llvm-13/lib/clang/13.0.1/include", + "-isystem", + "/usr/include/x86_64-linux-gnu", + "-isystem", + "/usr/include", + "-fmessage-length=0", + "-fdiagnostics-show-note-include-stack", + "-fretain-comments-from-system-headers", + "-fmacro-backtrace-limit=0", + "-ferror-limit=1000", + "-x", + "c++-header", + "-Wno-unknown-pragmas", + "-Wno-unknown-warning-option", + "-Wno-documentation-unknown-command", + "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/ui_mainwindow.h" + ], + "directory": "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/.qtc_clangd", + "file": "/home/gfdgd_xi/Desktop/deep-wine-runner/VM-source/ui_mainwindow.h" } ] \ No newline at end of file diff --git a/buildvbox.cpp b/buildvbox.cpp index 62694fb..804ab1e 100644 --- a/buildvbox.cpp +++ b/buildvbox.cpp @@ -106,7 +106,7 @@ buildvbox::buildvbox(QString isoPath, int id, int vm){ //vbox *box = new vbox("Window"); //vbox vm("Windows"); qemu vm("Windows"); - + bool setISOAlready = 0; switch (id) { case 0: vm.Create("Windows7"); @@ -129,20 +129,42 @@ buildvbox::buildvbox(QString isoPath, int id, int vm){ vm.Create("Windows11_64"); vm.SetDisplayMemory(128); vm.EnabledUEFI(true); + setISOAlready = 1; + break; + case 5: + vm.Create("WindowsXP_32"); + vm.SetDisplayMemory(32); + setISOAlready = 1; + break; + case 6: + vm.Create("WindowsNT_64"); + vm.SetDisplayMemory(32); + setISOAlready = 1; + break; + case 7: + vm.Create("WindowsNT_64"); + vm.SetDisplayMemory(32); + vm.EnabledUEFI(true); + setISOAlready = 1; break; } vm.CreateDiskControl(); //vm.CreateDiskControl("storage_controller_2"); vm.CreateDisk(QDir::homePath() + "/Qemu/Windows/Windows.qcow2", 131072); vm.MountDisk(QDir::homePath() + "/Qemu/Windows/Windows.qcow2"); - vm.MountISO(isoPath, "storage_controller_1", 0, 1); - switch (id) { - case 0: - vm.MountISO(programPath + "/Windows7X86Auto.iso", "storage_controller_1", 1, 2); - break; - case 1: - vm.MountISO(programPath + "/Windows7X64Auto.iso", "storage_controller_1", 1, 2); - break; + if(!setISOAlready){ + vm.MountISO(isoPath, "storage_controller_1", 0, 1); + switch (id) { + case 0: + vm.MountISO(programPath + "/Windows7X86Auto.iso", "storage_controller_1", 1, 2); + break; + case 1: + vm.MountISO(programPath + "/Windows7X64Auto.iso", "storage_controller_1", 1, 2); + break; + } + } + else{ + vm.AutoInstall(isoPath); } /*vm.MountISO(isoPath, "storage_controller_1", 0, 1); switch (id) { @@ -184,7 +206,7 @@ buildvbox::buildvbox(QString isoPath, int id, int vm){ //vbox *box = new vbox("Window"); vbox vm("Windows"); //qemu vm("Windows"); - + bool setISOAlready = 1; switch (id) { case 0: vm.Create("Windows7"); @@ -207,22 +229,44 @@ buildvbox::buildvbox(QString isoPath, int id, int vm){ vm.Create("Windows11_64"); vm.SetDisplayMemory(128); vm.EnabledUEFI(true); + setISOAlready = 1; break; - } + case 5: + vm.Create("WindowsXP_32"); + vm.SetDisplayMemory(32); + setISOAlready = 1; + break; + case 6: + vm.Create("WindowsNT_64"); + vm.SetDisplayMemory(32); + setISOAlready = 1; + break; + case 7: + vm.Create("WindowsNT_64"); + vm.SetDisplayMemory(32); + vm.EnabledUEFI(true); + setISOAlready = 1; + break; + } QDir dir("/home/gfdgd_xi/Qemu/Windows/"); dir.mkpath("/home/gfdgd_xi/Qemu/Windows/"); vm.CreateDiskControl(); //vm.CreateDiskControl("storage_controller_2"); vm.CreateDisk(QDir::homePath() + "/VirtualBox VMs/Windows/Windows.vdi", 131072); vm.MountDisk(QDir::homePath() + "/VirtualBox VMs/Windows/Windows.vdi"); - vm.MountISO(isoPath, "storage_controller_1", 0, 1); - switch (id) { - case 0: - vm.MountISO(programPath + "/Windows7X86Auto.iso", "storage_controller_1", 1, 0); - break; - case 1: - vm.MountISO(programPath + "/Windows7X64Auto.iso", "storage_controller_1", 1, 0); - break; + if(!setISOAlready){ + vm.MountISO(isoPath, "storage_controller_1", 0, 1); + switch (id) { + case 0: + vm.MountISO(programPath + "/Windows7X86Auto.iso", "storage_controller_1", 1, 0); + break; + case 1: + vm.MountISO(programPath + "/Windows7X64Auto.iso", "storage_controller_1", 1, 0); + break; + } + } + else{ + vm.AutoInstall(isoPath); } // 判断 VirtualBox Guest ISO 是否存在 diff --git a/mainwindow.cpp b/mainwindow.cpp index 526fa15..2bc9d99 100755 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -197,6 +197,9 @@ void MainWindow::on_install_clicked() } break; case 4: + case 5: + case 6: + case 7: if(ui->vmChooser->currentIndex() == 0){ QMessageBox::warning(this, "提示", "Qemu 不支持该选项!"); return; diff --git a/mainwindow.ui b/mainwindow.ui index 2a0102f..b1f9a41 100755 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -99,6 +99,21 @@ <string>安装 WIndows 11(不支持自动安装)</string> </property> </item> + <item> + <property name="text"> + <string>安装其他 Windows XP(支持自动安装,只支持 VirtualBox)</string> + </property> + </item> + <item> + <property name="text"> + <string>安装其他 Windows (支持自动安装,传统启动,只支持 VirtualBox)</string> + </property> + </item> + <item> + <property name="text"> + <string>安装其他 Windows(支持自动安装,UEFI 启动,只支持 VirtualBox)</string> + </property> + </item> </widget> </item> </layout> @@ -216,7 +231,7 @@ p, li { white-space: pre-wrap; } <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;">百度网盘:</span><a href="https://pan.baidu.com/s/19WbvinITCQJFZpAdZutrjg?pwd=me4y"><span style=" font-size:11pt; text-decoration: underline; color:#0082fa;">https://pan.baidu.com/s/19WbvinITCQJFZpAdZutrjg?pwd=me4y</span></a><span style=" font-size:10pt;"> 提取码: me4y</span></p> <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;">(如果下载这个,系统版本选第一项,一般推荐这个)</span><a href="ed2k://|file|cn_windows_7_ultimate_with_sp1_x86_dvd_u_677486.iso|2653276160|7503E4B9B8738DFCB95872445C72AEFB|/"><span style=" font-size:11pt; text-decoration: underline; color:#0082fa;">ed2k://|file|cn_windows_7_ultimate_with_sp1_x86_dvd_u_677486.iso|2653276160|7503E4B9B8738DFCB95872445C72AEFB|/</span></a></p> <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;">(如果下载这个,系统版本选第二项)</span><a href="ed2k://|file|cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso|3420557312|B58548681854236C7939003B583A8078|/"><span style=" font-size:11pt; text-decoration: underline; color:#0082fa;">ed2k://|file|cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso|3420557312|B58548681854236C7939003B583A8078|/</span></a></p> -<hr /></body></html></string> +<hr /></body></html><br/><p>UOS 3a4000 用户需要安装 Debian10 原版的 Qemu,下载链接:</p></string> </property> <property name="openLinks"> <bool>false</bool> diff --git a/qemu.cpp b/qemu.cpp index 8a903e2..b81a20e 100644 --- a/qemu.cpp +++ b/qemu.cpp @@ -133,3 +133,6 @@ int qemu::EnabledUEFI(bool status){ } return 1; } +int qemu::AutoInstall(QString iso){ + return 0; +} diff --git a/qemu.h b/qemu.h index f28236c..46d7a34 100644 --- a/qemu.h +++ b/qemu.h @@ -39,6 +39,7 @@ public: int SetKeyboardPS2(); int OpenUSB(); int EnabledUEFI(bool status); + int AutoInstall(QString iso); private: QString commandOption = ""; diff --git a/test-kvm.asm b/test-kvm.asm new file mode 100644 index 0000000..563978e --- /dev/null +++ b/test-kvm.asm @@ -0,0 +1,88 @@ +mov ax,0xb800 +mov es,ax +; 清屏 +mov cx,80*25 +clean: + mov di,cx + add di,di + mov byte [es:di],'' + add di,1 + mov byte [es:di],0x0F + loop clean +; 显示上方白条 +; 移除(0,0)的S字符 +mov byte [es:0x00],'' +mov cx,80*2-1 +mov di,0 +headtitle: + mov di,cx + mov byte [es:di],0xF0 + ; 写入空字符 + add di,di + mov byte [es:di],'' + ;inc cx + ;sub cx,1 + loop headtitle + +mov di,0 +mov cx,80*2-1 +; 显示下方白条 +tailtitle: + mov di,cx + add di,80*2*24 + mov byte [es:di],0xF0 + ; 写入空字符 + mov di,cx + add di,di + add di,80*2*24 + mov byte [es:di],'' + loop tailtitle +; 在第一行写入文本 Hello World! +jmp near showHeadText +headText: db 'Hello World!' +showHeadText: +; 虽然可以简单粗暴的用 movsw,但是会出现问题 + mov cx,showHeadText-headText + mov ax,0x7c0 + mov ds,ax ; 定位到汇编程序所在的内存地址 + showHeadTextLoop: + mov dx,cx + mov di,cx + add di,di + mov si,headText + sub dx,1 + add si,dx +; inc si +; mov al,1000 + mov al,[ds:si] + mov byte [es:di],al + loop showHeadTextLoop +jmp near showTailText +tailText: db '2020~Now gfdgd xi' +showTailText: + mov cx,showTailText-tailText + mov ax,0x7c0 + mov ds,ax + showTailTextLoop: + mov dx,cx + mov di,cx + add di,di + add di,80*2*24 + mov si,tailText + sub dx,1 + add si,dx + mov al,[ds:si] + mov byte [es:di],al + loop showTailTextLoop + +poweroff: + ; 跳过关机 + jmp near end + ; 关机 + mov ax,5307H ; 高级电源管理功能,设置电源状态 + mov bx,0001H ; 设备ID,1:所有设备 + mov cx,0003H ; 状态,3:表示关机 + int 15h +end: + times 510-($-$$) db 0 + db 0x55,0xaa diff --git a/test-kvm.asm.bin b/test-kvm.asm.bin new file mode 100644 index 0000000000000000000000000000000000000000..9e528e26cbb67119bb57c02560c16419f751ca43 GIT binary patch literal 512 zcmdnNu%qw5&I|0F=NbR29b;u^KF$cF_#eGjJI2Pqz_4>Z!+r*a&htRA4-f^9J^=-Q z!ky<Ek2COt#6eo2Y=%cKUh*(_q~_%0D}?74<)kR?<YCxxfW7ZV=P8h~eIX3ZuNWDx z*>$m~b+A5q^-_?*$iT>;&M&`QAw4Z6Jw>4+bEhD(4v@k78c}pTd&$kPgFSdRBg0N+ QhO?qTSB?TQLm+e&02JC$T>t<8 literal 0 HcmV?d00001 diff --git a/vbox.cpp b/vbox.cpp index 4f3894e..0cdb953 100644 --- a/vbox.cpp +++ b/vbox.cpp @@ -108,3 +108,6 @@ int vbox::EnabledUEFI(bool status){ } return system(("\"" + managerPath + "\" modifyvm \"" + name + "\" --firmware=bios").toLatin1()); } +int vbox::AutoInstall(QString iso){ + return system(("vboxmanage unattended install '" + name + "' '--iso=" + iso + "'").toLatin1()); +} diff --git a/vbox.h b/vbox.h index cc02198..00e92a8 100644 --- a/vbox.h +++ b/vbox.h @@ -39,7 +39,7 @@ public: int SetKeyboardPS2(); int OpenUSB(); int EnabledUEFI(bool status); - + int AutoInstall(QString iso); private: };