Featured image of post Wie man mit Rust und winapi eine Windows-MessageBox (MessageBox) anzeigt

Wie man mit Rust und winapi eine Windows-MessageBox (MessageBox) anzeigt

Erklärt Schritt für Schritt, von der Projekterstellung bis zur Codeimplementierung, wie man in Rust die Crates `winapi` und `user32-sys` verwenden, um die Windows-API aufzurufen und eine einfache MessageBox (MessageBox) anzuzeigen.

Sie können eine MessageBox in Rust anzeigen, indem Sie die folgenden Schritte ausführen.

  1. Installieren Sie Rust. Siehe Erste Schritte mit Rust
  2. Führen Sie cargo new --bin MessageBox in der Eingabeaufforderung aus.
  3. Wechseln Sie in das Verzeichnis MessageBox.
  4. Öffnen Sie Cargo.toml und ändern Sie es wie folgt.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
[package]
name = "hello_world"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
winapi = "0.2.7"
user32-sys = "0.2.0"
  1. Öffnen Sie src\main.rs und ändern Sie es wie folgt.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
extern crate user32;
extern crate winapi;

use std::ffi::CString;
use user32::MessageBoxA;
use winapi::winuser::{MB_OK, MB_ICONINFORMATION};

fn main() {
    let lp_text = CString::new("Hello, world!").unwrap();
    let lp_caption = CString::new("MessageBox Example").unwrap();

    unsafe {
        MessageBoxA(
            std::ptr::null_mut(),
            lp_text.as_ptr(),
            lp_caption.as_ptr(),
            MB_OK | MB_ICONINFORMATION
        );
    }
}
  1. Führen Sie cargo run in der Eingabeaufforderung aus. img.png

  2. Um einen Release-Build zu erstellen, führen Sie cargo build --release aus.

Referenz

Hello World MesssageBox example in Rust

comments powered by Disqus
Erstellt mit Hugo
Theme Stack gestaltet von Jimmy