49 lines
1.9 KiB
Markdown
49 lines
1.9 KiB
Markdown
# rustdesk-customization
|
|
Some tips for customizing RustDesk for Windows (other platforms might require additional changes)
|
|
|
|
|
|
# Embedding Sciter.dll
|
|
If you want a single portable executable file, you can either statically link Sciter, or embed the DLL. Statically linking it requires you [license Sciter](https://sciter.com/prices/), which costs money--so I went with embedding the dll.
|
|
|
|
|
|
1. Copy sciter.dll to your project root directory (where Cargo.toml resides)
|
|
2. Add the following lines into ```fn main()``` in src/main.rs
|
|
```
|
|
let bytes = include_bytes!("..\\sciter.dll");
|
|
fs::write("sciter.dll", bytes.as_slice());
|
|
```
|
|
Note: Do not remove the "..\\" as main.rs resides in /rustdesk/src, and will not be able to find the file otherwise. Alternatively you can put ```sciter.dll``` in /rustdesk/src
|
|
|
|
The function should now look like so:
|
|
```
|
|
#[cfg(not(any(target_os = "android", target_os = "ios", feature = "cli")))]
|
|
fn main() {
|
|
|
|
//BEGIN CHANGES
|
|
//Embed the Sciter.dll file into the exe, and then write it to disk when application starts
|
|
println!("================ LOADING SCITER DLLL ==================");
|
|
let bytes = include_bytes!("..\\sciter.dll"); //since main.rs is in rustdesk/src, we need to go up one level (to rustdesk)
|
|
fs::write("sciter.dll", bytes.as_slice());
|
|
//END CHANGES
|
|
|
|
if !common::global_init() {
|
|
return;
|
|
}
|
|
|
|
//println!("Key: {}", hbb_common::config::RS_PUB_KEY);
|
|
//println!("Password: {}", hbb_common::config::RS_PASS);
|
|
//println!("Salt: {}", hbb_common::config::RS_SALT);
|
|
if let Some(args) = crate::core_main::core_main().as_mut() {
|
|
ui::start(args);
|
|
}
|
|
common::global_clean();
|
|
}
|
|
```
|
|
|
|
# Hide Console Window
|
|
You can toggle the console terminal window by uncommenting line 3 in ```src/main.rs```
|
|
|
|
```#![windows_subsystem = "windows"]```
|
|
|
|
Comment it out to show console window, uncomment it to hide.
|