diff --git a/Model/__pycache__/__init__.cpython-36.pyc b/Model/__pycache__/__init__.cpython-36.pyc
new file mode 100644
index 0000000..8a3c7f4
Binary files /dev/null and b/Model/__pycache__/__init__.cpython-36.pyc differ
diff --git a/Mount.sh b/Mount.sh
index 05adac9..b637a2e 100644
--- a/Mount.sh
+++ b/Mount.sh
@@ -7,12 +7,10 @@ if [ ! -d "$1" ]; then
     echo "路径不存在!"
     exit 1
 fi
-# 挂载用户目录
-mkdir -p "$1/home/$USER"
-mount -o bind ~ "$1/home/$USER"
-# 挂载 Wine 运行器目录
-#mount -o bind `dirname $0` "$1/opt/apps/deepin-wine-runner/wine"
-mount -o bind `dirname $0` "$1/opt/apps/deepin-wine-runner/"
+echo $0
+echo $1
+echo $2
+echo $3
 # 挂载必备目录
 cd "$1"
 mount --bind /dev ./dev
@@ -21,5 +19,23 @@ mount -t proc /proc ./proc
 mount --bind /etc/resolv.conf ./etc/resolv.conf
 mount -t sysfs /sys ./sys
 mount --bind /dev/shm  ./dev/shm
-# 如果参数 2 存在
-chroot . "${@:2}"
\ No newline at end of file
+chmod 777 -R root
+xhost +
+# 挂载 Wine 运行器目录
+mount -o bind `dirname $0` ./opt/apps/deepin-wine-runner/
+# 挂载字体
+mount -o bind /usr/share/fonts ./usr/share/fonts
+# 配置用户
+if [ ! -d "home/$2" ]; then
+    # 新建用户,且密码为 123456,以便读写
+    chroot . echo -e "123456\n123456\n\n\n\n\n\n\n\n\n" | adduser "$2"
+fi
+# 挂载用户目录到 /root(默认 $HOME 路径)
+if [[ $2 == "root" ]]; then
+    mount --bind root "$1/root/"
+else
+    mount --bind "/home/$2" "$1/root/"
+fi
+
+# 如果参数 3 存在
+chroot . "${@:3}"
\ No newline at end of file
diff --git a/QemuRun.py b/QemuRun.py
index 30bd61d..41a2f26 100644
--- a/QemuRun.py
+++ b/QemuRun.py
@@ -1,6 +1,7 @@
 #!/usr/bin/env python3
 import os
 import sys
+import getpass
 import PyQt5.QtWidgets as QtWidgets
 
 if __name__ == "__main__":
@@ -12,13 +13,15 @@ if __name__ == "__main__":
     app = QtWidgets.QApplication(sys.argv)
     # 判断是否已下载镜像
     if not os.path.exists(f"{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}"):
-        if QtWidgets.QMessageBox.information(None, "提示", "此镜像未下载解压,无法继续"):
-            pass
+        QtWidgets.QMessageBox.information(None, "提示", "此镜像未下载解压,无法继续")
+        exit()
     commandList = ""
+    userName = getpass.getuser()
     for i in sys.argv[2:]:
-        commandList += f"'{i}'"
+        commandList += f"'{i}' "
     # 判断是否挂载
     if not os.path.ismount(f"{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}/proc"):
         print("文件暂未挂载,开始挂载")
-        sys.exit(os.system(f"pkexec '{programPath}/Mount.sh' '{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}/proc' {commandList}"))
-    sys.exit(os.system(f"pkexec chroot '{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}/proc' {commandList}"))
\ No newline at end of file
+        sys.exit(os.system(f"pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY  bash '{programPath}/Mount.sh' '{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}' '{userName}' {commandList}"))
+    #print(f"pkexec chroot '{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}/' {commandList}")
+    sys.exit(os.system(f"pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY  chroot '--userspec={userName}:{userName}' '{homePath}/.deepin-wine-runner-ubuntu-images/{sys.argv[1]}/' env DISPLAY=:0.0 {commandList}"))
\ No newline at end of file
diff --git a/UnMount.sh b/UnMount.sh
new file mode 100644
index 0000000..ac9b385
--- /dev/null
+++ b/UnMount.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+if [ ` whoami ` != "root" ]; then 
+    echo "Only root can run me" 
+    exit 1 
+fi
+if [ ! -d "$1" ]; then
+    echo "路径不存在!"
+    exit 1
+fi
+echo $0
+echo $1
+echo $2
+#echo $3
+# 挂载必备目录
+cd "$1"
+umount ./dev
+umount ./dev/pts
+umount ./proc
+umount ./etc/resolv.conf
+umount ./sys
+umount ./dev/shm
+# 挂载 Wine 运行器目录
+umount ./opt/apps/deepin-wine-runner/
+# 挂载字体
+umount ./usr/share/fonts
+# 挂载用户目录到 /root(默认 $HOME 路径)
+umount ./root
\ No newline at end of file
diff --git a/demo/APICheck/main.cpp b/demo/APICheck/main.cpp
new file mode 100644
index 0000000..0b4e41f
--- /dev/null
+++ b/demo/APICheck/main.cpp
@@ -0,0 +1,7 @@
+#include <iostream>
+#include <Windows.h>
+using namespace std;
+int main(){
+	MessageBox(NULL, TEXT("a"), TEXT("A"), 32);
+	return 0;
+}
diff --git a/demo/APICheck/main.exe b/demo/APICheck/main.exe
new file mode 100755
index 0000000..e91300a
Binary files /dev/null and b/demo/APICheck/main.exe differ
diff --git a/req/__pycache__/__init__.cpython-36.pyc b/req/__pycache__/__init__.cpython-36.pyc
new file mode 100644
index 0000000..b9c480a
Binary files /dev/null and b/req/__pycache__/__init__.cpython-36.pyc differ