Featured image of post Comment afficher une boîte de message Windows (MessageBox) avec Rust et winapi

Comment afficher une boîte de message Windows (MessageBox) avec Rust et winapi

Explique, étape par étape de la création du projet jusqu'à l'implémentation du code, comment utiliser les crates `winapi` et `user32-sys` en Rust pour appeler l'API Windows et afficher une simple boîte de message (MessageBox).

Vous pouvez afficher une MessageBox en Rust en suivant les étapes ci-dessous.

  1. Installez Rust. Consultez Comment débuter avec Rust
  2. Exécutez cargo new --bin MessageBox dans l’invite de commande.
  3. Accédez au répertoire MessageBox.
  4. Ouvrez Cargo.toml et modifiez-le comme suit.
 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. Ouvrez src\main.rs et modifiez-le comme suit.
 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. Exécutez cargo run dans l’invite de commande. img.png

  2. Si vous souhaitez effectuer une version de release, exécutez cargo build --release.

Référence

Hello World MesssageBox example in Rust

comments powered by Disqus
Généré avec Hugo
Thème Stack conçu par Jimmy