導航:首頁 > 配伺服器 > 伺服器如何添加自啟軟體

伺服器如何添加自啟軟體

發布時間:2024-04-24 16:36:43

㈠ 濡備綍鐢–#璇璦閫氳繃鏈嶅姟鏉ュ疄鐜板紑鏈哄惎鍔錛

寰堝氬紑鏈哄惎鍔ㄧ▼搴忎粎浠呭姞鍦ㄥ惎鍔ㄩ」閲岄潰錛屽彧鏈夌櫥闄嗗悗鎵嶇湡姝e惎鍔ㄣ倃indows鏈嶅姟鍦ㄥ紑鏈烘湭榪涜岀敤鎴風櫥褰曞墠灝卞惎鍔ㄤ簡銆傛f槸鍒╃敤榪欎竴鐐癸紝瑙e喅涓浜涙湇鍔″櫒鑷鍔ㄩ噸鍚鍚庣壒瀹氳蔣浠朵篃鑷鍔ㄥ惎鍔ㄧ殑闂棰樸
1.鏂板緩涓涓鏈嶅姟欏圭洰 visual C#----windows----windows鏈嶅姟錛
2.娣誨姞涓涓猟ataset錛.xsd錛,鐢ㄤ簬瀛樺偍鍚鍔ㄧ洰鏍囩殑璺寰勶紝鏃ュ織璺寰勭瓑銆
鍦╠ataset鍙瑙嗗寲緙栬緫涓錛屾坊鍔犱竴涓猟atatable錛屽寘鍚涓ゅ垪 StartAppPath 鍜 LogFilePath銆傚垎鍒鐢ㄤ簬瀛樺偍鐩鏍囩殑璺寰勩佹棩蹇楄礬寰勩
*鎴戣や負鍒╃敤dataset.xsd瀛樺偍閰嶇疆鍙傛暟鐨勪紭鍔垮湪浜庡彲浠ュ拷鐣xml瑙f瀽鐨勫叿浣撹繃紼嬬洿鎺ヤ嬌鐢▁ml鏂囦歡銆
鍦╠ataset涓 鎻愪緵浜哛eadXml鏂規硶鐢ㄤ簬璇誨彇xml鏂囦歡騫跺皢鍏惰漿鎹㈡垚鍐呭瓨涓鐨勪竴寮燿atatable琛錛屾暟鎹寰堝規槗鍙栧嚭鏉ワ紒鍚屾牱錛學riteXml鏂規硶鐢ㄤ簬瀛樺偍涓簒ml鏍煎紡鐨勬枃浠訛紝涔熶粎浠呴渶瑕佷竴鍙ヨ瘽鑰屽凡銆
3. program.cs鏂囦歡 浣滀負紼嬪簭鍏ュ彛錛屼唬鐮佸備笅錛
view plain to clipboardprint?
using System.Collections.Generic;
using System.ServiceProcess;
using System.Text;

namespace WindowsServices_AutoStart
{
static class Program
{
/// <summary>
/// 搴旂敤紼嬪簭鐨勪富鍏ュ彛鐐廣
/// </summary>
static void Main()
{
ServiceBase[] ServicesToRun;

// 鍚屼竴榪涚▼涓鍙浠ヨ繍琛屽氫釜鐢ㄦ埛鏈嶅姟銆傝嫢瑕佸皢
// 鍙︿竴涓鏈嶅姟娣誨姞鍒版よ繘紼嬩腑錛岃鋒洿鏀逛笅琛屼互
// 鍒涘緩鍙︿竴涓鏈嶅姟瀵硅薄銆備緥濡傦紝
//
// ServicesToRun = new ServiceBase[] {new Service1(), new MySecondUserService()};
//
ServicesToRun = new ServiceBase[] { new WindowsServices_AutoStart() };

ServiceBase.Run(ServicesToRun);
}
}
}
using System.Collections.Generic;
using System.ServiceProcess;
using System.Text;
namespace WindowsServices_AutoStart
{
static class Program
{
/// <summary>
/// 搴旂敤紼嬪簭鐨勪富鍏ュ彛鐐廣
/// </summary>
static void Main()
{
ServiceBase[] ServicesToRun;
// 鍚屼竴榪涚▼涓鍙浠ヨ繍琛屽氫釜鐢ㄦ埛鏈嶅姟銆傝嫢瑕佸皢
// 鍙︿竴涓鏈嶅姟娣誨姞鍒版よ繘紼嬩腑錛岃鋒洿鏀逛笅琛屼互
// 鍒涘緩鍙︿竴涓鏈嶅姟瀵硅薄銆備緥濡傦紝
//
// ServicesToRun = new ServiceBase[] {new Service1(), new MySecondUserService()};
//
ServicesToRun = new ServiceBase[] { new WindowsServices_AutoStart() };
ServiceBase.Run(ServicesToRun);
}
}
}
4.service.cs涓繪枃浠訛紝浠g爜濡備笅錛
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.IO;
using System.Diagnostics;
using System.ServiceProcess;
using System.Text;
namespace WindowsServices_AutoStart
{
public partial class WindowsServices_AutoStart : ServiceBase
{
public WindowsServices_AutoStart()
{
InitializeComponent();
}
string StartAppPath =""; //@"F:\00.exe";
string LogFilePath ="";// @"f:\WindowsService.txt";
protected override void OnStart(string[] args)
{
string exePath = System.Threading.Thread.GetDomain().BaseDirectory;
//
if (!File.Exists(exePath + @"\ServiceAppPath.xml"))
{
dsAppPath ds = new dsAppPath();
object[] obj=new object[2];
obj[0]="0";
obj[1]="0";
ds.Tables["dtAppPath"].Rows.Add(obj);
ds.Tables["dtAppPath"].WriteXml(exePath + @"\ServiceAppPath.xml");
return;
}
try
{
dsAppPath ds = new dsAppPath();
ds.Tables["dtAppPath"].ReadXml(exePath + @"\ServiceAppPath.xml");
DataTable dt = ds.Tables["dtAppPath"];
StartAppPath = dt.Rows[0]["StartAppPath"].ToString();
LogFilePath = dt.Rows[0]["LogFilePath"].ToString();
}
catch { return; }

if (File.Exists(StartAppPath))
{
try
{
Process proc = new Process();
proc.StartInfo.FileName = StartAppPath; //娉ㄦ剰璺寰
//proc.StartInfo.Arguments = "";
proc.Start();
}
catch (System.Exception ex)
{
//MessageBox.Show(this, "鎵句笉鍒板府鍔╂枃浠惰礬寰勩傛枃浠舵槸鍚﹁鏀瑰姩鎴栧垹闄わ紵\n" + ex.Message, "鎻愮ず", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
FileStream fs = new FileStream(LogFilePath, FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine("WindowsService: Service Started" + DateTime.Now.ToString() + "\n");
m_streamWriter.Flush();
m_streamWriter.Close();
fs.Close();
}
}
protected override void OnStop()
{
try
{
// TODO: 鍦ㄦゅ勬坊鍔犱唬鐮佷互鎵ц屽仠姝㈡湇鍔℃墍闇鐨勫叧闂鎿嶄綔銆
FileStream fs = new FileStream(LogFilePath, FileMode.OpenOrCreate, FileAccess.Write);
StreamWriter m_streamWriter = new StreamWriter(fs);
m_streamWriter.BaseStream.Seek(0, SeekOrigin.End);
m_streamWriter.WriteLine("WindowsService: Service Stopped " + DateTime.Now.ToString() + "\n");
m_streamWriter.Flush();
m_streamWriter.Close();
fs.Close();
}
catch
{
}
}
}
}

5.鍚鍔ㄨ皟璇曪紝鎴愬姛鏃朵篃浼氬脊鍑轟竴涓瀵硅瘽妗嗗ぇ鑷存剰鎬濇槸鎻愮ず鏈嶅姟闇瑕佸畨瑁呫
6.鎶奃ebug鏂囦歡澶逛笅闈㈢殑.exe鎵ц岀▼搴忥紝瀹夎呬負windows緋葷粺鏈嶅姟錛屽畨瑁呮柟娉曠綉涓婂緢澶氫粙緇嶃傛垜璇翠竴縐嶅父鐢ㄧ殑錛
瀹夎呮湇鍔
璁塊棶欏圭洰涓鐨勫凡緙栬瘧鍙鎵ц屾枃浠舵墍鍦ㄧ殑鐩褰曘
鐢ㄩ」鐩鐨勮緭鍑轟綔涓哄弬鏁幫紝浠庡懡浠よ岃繍琛 InstallUtil.exe銆傚湪鍛戒護琛屼腑杈撳叆涓嬪垪浠g爜錛
installutil yourproject.exe
鍗歌澆鏈嶅姟
鐢ㄩ」鐩鐨勮緭鍑轟綔涓哄弬鏁幫紝浠庡懡浠よ岃繍琛 InstallUtil.exe銆
installutil /u yourproject.exe
鑷蟲わ紝鏁翠釜鏈嶅姟宸茬粡緙栧啓錛岀紪璇戱紝瀹夎呭畬鎴愶紝浣犲彲浠ュ湪鎺у埗闈㈡澘鐨勭$悊宸ュ叿鐨勬湇鍔′腑錛岀湅鍒頒綘緙栧啓鐨勬湇鍔°
7.瀹夎呭ソ浜嗕箣鍚庡湪緋葷粺鏈嶅姟鍒楄〃涓鍙浠ョ$悊鏈嶅姟錛岃繖鏃惰佹敞鎰忓皢鏈嶅姟鐨勫睘鎬х獥鍙----鐧婚檰----鈥滃厑璁鎬簬妗岄潰浜や簰鈥濆嬀閫夛紒榪欐牱鎵嶈兘鍦ㄥ惎鍔ㄤ簡浣犺佺殑鐩鏍囩▼搴忓悗涓嶅崟鍗曞瓨鐣欎簬榪涚▼銆傚湪妗岄潰涓婁篃鐪嬪緱鍒般
8.鍏充簬鍗歌澆鏈嶅姟錛岀洰鍓嶆湁涓や釜姒傚康錛氫竴鏄紱佺敤鑰屽凡錛涗竴鏄瀹屽叏鍒犻櫎鏈嶅姟銆 鍓嶈呭彲浠ラ氳繃鏈嶅姟綆$悊紿楀彛鐩存帴瀹屾垚銆傚悗鑰呭垯闇瑕佽繘鍏ユ敞鍐岃〃鈥淗KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services鈥濇壘鍒版湇鍔″悕縐扮殑鏂囦歡澶癸紝鏁翠釜鍒犳帀錛岄噸鏂板惎鍔ㄧ數鑴戝悗錛屾湇鍔℃秷澶便
9.鎵╁睍鎬濊冿細緇忚繃淇鏀逛唬鐮侊紝榪樺彲浠ュ疄鐜幫細鍚鍔ㄧ洰鏍囩▼搴忎箣鍓嶏紝媯嫻嬭繘紼嬩腑鏄鍚﹀瓨鍦ㄧ洰鏍囩▼搴忥紝瀛樺湪鍒欎笉鍐嶆″惎鍔

㈡ windows設置開機自啟動腳本

Windows系統想要快速設置開機自動啟動某個程序,可以使用以下幾種方法設置:

第一種:設置啟動項

1.找到啟動文件夾,我的是C:\Users\ThinkPad\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup,或者打開運行,輸入shell:startup,回車,也可以快速打開啟動文件夾。

2.拷貝需要開機啟動的程序的快捷方式到此文件夾即可。

3.打開任務管理器-啟動查看啟動項。

這樣就設置好了,下次計算機啟動時,程序也會自動啟動的。

第二種:使用計劃任務自啟動

1.新建文本文件DebugStart.txt,打開寫入以下內容:

tasklist|find /i "authSender.exe" && echo started || start "" "D:\Debug\authSender.exe"。

這條語句不能換行, authSender.exe 是程序名, "D:\Debug\authSender.exe"是此程序所在路徑,tasklist|find /i "authSender.exe"是判斷進程是否存在,程序是否已經開啟,如未開啟才會啟動程序,然後改後綴名 .txt 為 .bat,雙擊即可啟動程序。(可以在每條語句前使用 :: 來注釋一條語句),這種方法還可以批量啟動不同程序,只需要在此文件中重啟一行,按相同格式寫第二個要啟動的程序對應的語句即可。

2.進入任務計劃程序窗口,創建任務。

接著選擇觸發器選項卡,選擇新建,在第一欄開始任務處選擇登錄時(啟動時開始任務需要管理員許可權)或啟動時(啟動時開始任務需要管理員許可權),點擊確定。由於我們的 bat腳本有做判斷,所以不用擔心程序會啟動多次。

在操作選項卡選擇新建,並選擇啟動程序選項,以及在程序和腳本處選擇剛才編寫的.bat程序,點擊確定,然後再點擊確定(創建任務界面的確定)。

關閉頁面,即可做到開機自動啟動程序。

第三種:通過組策略設置腳本隨伺服器啟動

1.開始->運行->gpedit.msc->計算機配置->Windows設置->腳本(啟動/關機)。其中Win10有很多版本,其中家庭版默認是不提供組策略功能,如果需要給win10的家庭版添加組策略的功能,可以參考https://blog.csdn.net/lwpkjio/article/details/85236808。

2.添加啟動腳本,點擊確定。

這樣就可以了。

第四種:添加服務自動運行

1.開始---運行---cmd---回車,在彈出的窗體中輸入如下命令

sc create Debug binPath= D:\Debug\authSender.exe start= auto,其中Debug為將要創建的服務名。要刪除創建的服務也很簡單,使用以下命令即可:sc delete ServiceName

2.打開控制面板---管理工具---服務(或者 開始---運行---services.msc---確認)打開服務管理器,看看你創建的服務已經在裡面了,至此,服務運行已創建完成。

㈢ 怎樣實現重啟linux後自動啟動vncserver服務

linux開機自動啟動vncserver服務,需要先保證VNC安裝無問題以及各種配置以及防火牆正常,下面是vncserver服務安裝、配置以及設置自啟動的步驟:

首先需要檢查一下伺服器是否已經安裝了VNC服務,檢查伺服器的是否安裝VNC的命令如下:
rpm -qa | grep vnc

使用了上面的命令我這邊返回的信息是下面的(如果沒有任何顯示,則說明系統沒有安裝vnc包)
tigervnc-1.1.0-5.el6.i686
tigervnc-server-1.1.0-5.el6.i686
如果沒有安裝vnc可以使用下面命令進行安裝:
yum install tigervnc tigervnc-server

接下來就是安裝之後的配置問題了。
使用下面的命令編輯配置文件:
vi /etc/sysconfig/vncservers

使用上面命令的時候,可能您伺服器上面已經存在這個配置文件,也可能您伺服器上面不存在這個配置文件,將下面的內容添加到配置文件內:
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 800x600"
下面這段是上面所講配置文件註解,做參考之用:
#這個是配置遠程桌面登錄的用戶名,如果兩個用戶,則使用VNCSERVERS="1:user1 2:user2" ,,
依次類推,默認情況下,1:user1對應5901,2:user2對應5902(VNC的默認監聽埠是5900,監聽埠規則為590+usernumber),如下
VNCSERVERS="usernumber:myusername"
#下面這項配置為登錄桌面配置,其中的「1」為用戶序號,800x600為解析度,-nolisten tcp為阻止tcp包,-localhost代表只監聽本地,
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -localhost"
如果想阻止http包,可以使用如下配置
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
使用下面的命令為vnc設置密碼(需要使用su 切換到要設置vnc密碼的用戶上,比如:su user1,其中user1就是在上面配置文件內寫的帳號)
vncpasswd

設置好密碼之後,就是啟動VNC服務了,啟動VNC服務的時候也需要用su user1(user1就是在上面配置文件內寫的帳號)切換到要啟動服務的帳號上(很多朋友在使用DirectSpace默認的桌面VNC的時候,遇到無法連接「10061錯誤」,即可在ssh下輸入下面命令解決!)
vncserver

其他命令,比如重啟VNC服務就用下面的命令:
service vncserver restart

設置VNC服務開機啟動用下面的命令:
chkconfig vncserver on

在一些minimal系統里,即使英文也會出現方框亂碼,請使用本處命令修正:yum -y install fontforge
其它說明:
設置完畢後使用servers vncserver start(如果不能啟動,檢查軟體是否安裝正常,檢查/etc/rc.d/init.d目錄是否存在vncserver控制腳本),
啟動完畢後使用netstat -nat查看監聽埠(默認為5901,5902,5903等),如果開啟了防火牆,則需要配置規則允許對應埠tcp包通過。
參考配置:iptables -I INPUT 1 -p tcp --dport 5901 -j ACCEPT(其中-I INPUT 1代表插入一條規則,這條規則的位置是1,詳情請查閱iptables相關配置)

閱讀全文

與伺服器如何添加自啟軟體相關的資料

熱點內容
程序員俱樂部注冊 瀏覽:15
洗潔精雞蛋盤解壓視頻 瀏覽:291
企業內網加密app 瀏覽:49
騰訊雲伺服器怎麼設置本地網路 瀏覽:623
日常程序員 瀏覽:513
哪個pe有bit加密功能 瀏覽:108
rust伺服器是用什麼ip 瀏覽:692
java隨機字元串生成 瀏覽:551
數碼寶貝編程人物 瀏覽:390
php多用戶建站系統 瀏覽:624
加密防盜地上栓價位 瀏覽:671
比澤爾壓縮機下載 瀏覽:420
深圳壓縮機製造公司 瀏覽:882
如何給u盤單獨文件加密碼 瀏覽:284
恆溫機故障源碼 瀏覽:418
如何打開管家婆伺服器支持者 瀏覽:266
安卓手機自帶瀏覽器有什麼用 瀏覽:532
老闆咨詢阿里雲還是獨立伺服器 瀏覽:814
諾基亞手機app哪裡下載 瀏覽:522
看比賽用哪個app 瀏覽:977