windresをcargo addか、Cargo.tomlに追加して
#[cfg(windows)] extern crate windres; use windres::Build; fn main() { Build::new().compile("src/icon.rc").unwrap(); }
でなんかできた。他の人もなんか同じような記事見かけたけど、一応試してみての結果を書いとく。
ちなみに、icon.rcの内容は
1 ICON "test.ico"
みたいにしたらできた。ちなみに、icon.rcと同じディレクトリにアイコンもないとだめっぽい。あと良くわからなかったけど、
ICON "test.ico"
みたいに、最初の1をなくしてもエラーになった。多分引数ってかなんかのやーつなんだろう。
あと、この方法Windows限定っぽい。Linuxだと単にデスクトップマネージャだっけ、ディスプレイマネージャーだっけ、まぁそこら辺で普通に設定できるっぽい。プログラムからアイコンを直接実行可能ファイルに埋め込むのはWindowsだけなんかな?