html5程序自动登录,Jtro的技术分享:网页调起unity的exe程序并自动登录
思路是這樣:通過一個額外的exe文件來實現登錄,并保存一個token文件,然后在unity的項目提交數據的時候讀取這個token向服務器發送數據。
下面是具體的方法:
s
這個需要用到WPF來編寫,首先打開VS2017,選擇創建WPF項目:
SharedScreenshot.jpg
如果你的VS中沒有wpf那么你就需要打開vsinstaller,選擇“窗體程序開發”
SharedScreenshot.jpg
環境好了之后,開始寫代碼,但是wpf與winform有點不同,沒有找到main函數,但是這個問題不大,你可以自己新建一個Program.cs的文件,然后點擊運行,不出意外的話,會報錯,說是有2個入口了,這就表明,他是有main函數的,但是被它隱藏了。所以就需要用戶自己調,右擊項目面板中的根文件,然后選擇屬性:選擇文件的啟動項:
SharedScreenshot.jpg
就是你剛剛創建的program.cs文件,然后這樣就可以在自己的main函數中寫代碼了:
[STAThread]
static void Main(string[] args)
{
CustomApplication app = new CustomApplication();
app.Run();
}
class CustomApplication : Application
{
protected override void OnStartup(StartupEventArgs e)
{
JsonData jsonData = new JsonData();
string logJson = "";
base.OnStartup(e);
if (e.Args.Length > 0)
{
MainWindow window = new MainWindow(e.Args);
string s1 = e.Args[0];
string s2 = s1.Replace("//", "/"); //切割傳入的字符串
string[] Info = s2.Split('/'); //多個參數的切割
string[] Fname = Info[4].Split('.');
#region
jsonData["username"] = Info[1];
jsonData["password"] = Info[2];
jsonData["schoolId"] = Info[3];
string jsl = jsonData.ToJson();
logJson = (Post("http://120.27.229.5:8097/experiment/login", jsl));
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
LogDoneMsg logDoneMsg = javaScriptSerializer.Deserialize(logJson);
TokenAll tokenAll = javaScriptSerializer.Deserialize(logJson);
#endregion
if (logDoneMsg.msg == "成功")
{
System.Diagnostics.Process.Start(@"D:\virtureal\project\" + Fname[0] + @"\" + Info[4]);
Application.Current.Shutdown();
}
}
else
{
MessageBox.Show("未傳入參數!" );
Application.Current.Shutdown();
}
}
以上就是在wpf中被網頁調起的過程
網頁端這么操作:
注冊表參數
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\OCEEQPLUS]
@="OCEEQPLUS Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\OCEEQPLUS\DefaultIcon]
@="G:\\test\\OCEEQPLUS.EXE,1"
[HKEY_CLASSES_ROOT\OCEEQPLUS\shell]
@=""
[HKEY_CLASSES_ROOT\OCEEQPLUS\shell\open]
@=""
[HKEY_CLASSES_ROOT\OCEEQPLUS\shell\open\command]
@="\"G:\\test\\OCEEQPLUS.EXE\" \"%1\""
html頁面調用
//這個參數會傳到exe文件中,然后根據網頁上的登錄信息將參數傳給exe文件
alt="點擊這里">
這樣就被調起了,然后再在喚起成功的界面打開unity文件即可。
其實這就是通過中轉來打開unity程序,把unity內置的登錄功能用wpf來寫了。運行的時候也就是一閃而過。用戶根本發現不了。
總結
以上是生活随笔為你收集整理的html5程序自动登录,Jtro的技术分享:网页调起unity的exe程序并自动登录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【OpenCV 例程200篇】46. 直
- 下一篇: 虚拟桌面分屏_桌面中的灭霸 三星C49H