3 回答

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個贊
我確實(shí)知道如何將bat / cmd手動轉(zhuǎn)換為exe,請確保bat / cmd文件名僅包含字母和數(shù)字。以管理員身份打開“ IExpress向?qū)?”。
選擇“創(chuàng)建新的自我提取指令文件”
選擇“提取文件并運(yùn)行安裝命令”
給包裹起任何名字
“無提示”為“確認(rèn)提示”
“許可協(xié)議”的“不顯示許可”
單擊“添加”作為“打包文件”,從中選擇bat / cmd文件
然后在“要啟動的安裝程序”的“安裝程序”文本框中,鍵入cmd /c,后跟bat / cmd文件的全名,(例如:emptyrecyclebin.bat=> cmd /c emptyrecyclebin.bat)
保留“安裝后命令”原樣
“隱藏”表示“顯示窗口”
“完成消息”為“無消息”
單擊“瀏覽”,然后選擇將exe下載到的位置
啟用“從用戶隱藏文件提取進(jìn)度動畫”
禁用“使用包內(nèi)的長文件名存儲文件”
對于“配置重新啟動”,絕對為“不重新啟動”
如果要稍后重新編譯,請保存SED。
然后創(chuàng)建包!命令窗口應(yīng)迅速出現(xiàn)并消失
導(dǎo)航至將exe下載至的位置,然后 享受!

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個贊
您還可以開發(fā)一個簡單的exe,僅調(diào)用您的蝙蝠腳本。
例如,您可以用C#編寫一個(我不是C#-Pro,這實(shí)際上是我的第一個程序,我從其他Stackoverflow帖子中復(fù)制了很多程序。):
using System;
using System.Diagnostics;
using System.Windows.Forms;
using System.IO;
class BatCaller {
static void Main() {
var batFile = System.Reflection.Assembly.GetEntryAssembly().Location.Replace(".exe", ".bat");
if (!File.Exists(batFile)) {
MessageBox.Show("The launch script could not be found.", "Critical error", MessageBoxButtons.OK, MessageBoxIcon.Error);
System.Environment.Exit(42);
}
var processInfo = new ProcessStartInfo("cmd.exe", "/c \"" + batFile + "\"");
processInfo.CreateNoWindow = true;
processInfo.UseShellExecute = false;
processInfo.RedirectStandardError = true;
processInfo.RedirectStandardOutput = true;
var process = Process.Start(processInfo);
process.OutputDataReceived += (object sender, DataReceivedEventArgs e) => Console.WriteLine("output>>" + e.Data);
process.BeginOutputReadLine();
process.ErrorDataReceived += (object sender, DataReceivedEventArgs e) => Console.WriteLine("error>>" + e.Data);
process.BeginErrorReadLine();
process.WaitForExit();
Console.WriteLine("ExitCode: {0}", process.ExitCode);
process.Close();
}
}
如果將上面的代碼存儲到MySuperApp.bat旁邊的MySuperApp.cs中,然后對其進(jìn)行編譯csc.exe /target:winexe MySuperApp.cs(甚至可以添加/win32icon:MySuperApp.ico以添加精美的圖標(biāo)),它將生成MySuperApp.exe。
啟動時MySuperApp.exe將調(diào)用MySuperApp.bat(同名的bat文件)。
- 3 回答
- 0 關(guān)注
- 2731 瀏覽
添加回答
舉報(bào)