windows服务配置

This commit is contained in:
lubeilin
2023-05-28 21:11:47 +08:00
parent 78ae5f3036
commit cf7854906f
3 changed files with 8 additions and 2 deletions
+6 -1
View File
@@ -17,7 +17,12 @@ lazy_static! {
#[cfg(windows)]
pub fn get_win_server_home() -> PathBuf {
"./".into()
SWITCH_HOME_PATH.lock().as_ref().unwrap().clone()
}
#[cfg(windows)]
pub fn set_win_server_home(home:PathBuf) {
let _ = SWITCH_HOME_PATH.lock().insert(home);
}
pub struct StartConfig {
+1
View File
@@ -141,6 +141,7 @@ async fn main() {
let args: Vec<_> = std::env::args().collect();
if args.len() == 3 && args[1] == windows::SERVICE_FLAG {
//以服务的方式启动
config::set_win_server_home(std::path::PathBuf::from(&args[2]));
windows::service::start();
return;
} else {
+1 -1
View File
@@ -44,7 +44,7 @@ pub fn switch_service_main(arguments: Vec<OsString>) {
}
async fn service_main(args: StartArgs) -> windows_service::Result<()> {
log::error!("service_main{:?}",args);
log::info!("service_main{:?}",args);
let parker = crossbeam::sync::Parker::new();
let un_parker = parker.unparker().clone();
let event_handler = move |control_event| -> ServiceControlHandlerResult {