Skip to main content

desktop_app/
desktop_app.rs

1fn main() -> Result<(), Box<dyn std::error::Error>> {
2    let app = win_desktop_utils::DesktopApp::with_company("Acme", "Demo Utility")?;
3
4    let _guard = match app.single_instance()? {
5        Some(guard) => guard,
6        None => {
7            println!("{} is already running", app.app_name());
8            return Ok(());
9        }
10    };
11
12    let local_dir = app.ensure_local_data_dir()?;
13    let state_file = local_dir.join("state.txt");
14    std::fs::write(&state_file, "started\n")?;
15
16    let docs_shortcut = local_dir.join("win-desktop-utils docs.url");
17    win_desktop_utils::create_url_shortcut(&docs_shortcut, "https://docs.rs/win-desktop-utils")?;
18
19    println!("app id: {}", app.app_id());
20    println!("local data: {}", local_dir.display());
21    println!("state file: {}", state_file.display());
22    println!("docs shortcut: {}", docs_shortcut.display());
23
24    Ok(())
25}