hakeの日記

Windows環境でプログラミングの勉強をしています。

Go言語 - WALKでGUI - 単独起動する実行ファイルの作成

WindowsでWALKライブラリを使用したGUIアプリケーションの起動には、マニフェストファイルを同じ場所に置いておく必要がありましたが、rsrcというツールでマニフェストファイル(とアイコンファイル)を実行ファイル内に取り込むことで単独起動するファイルを作成する方法がわかったのでメモです。

入手先

go get github.com/akavel/rsrc

でインストールし、rsrcフォルダに移動して、rsrc.goをコンパイルする。
作成されたrsrc.exeをパスの通った場所に移動する。

sysoファイルの作成

マニフェストファイル(とアイコンファイル)を用意して、以下を実行します。

rsrc -manifest APP.exe.manifest -ico ICON.ico -o APP.syso

goファイルのコンパイル

アプリケーション名をつけたフォルダに、goファイルとsysoファイルを置いてコンパイルする。
【注意】ソースファイル名を指定しないでコンパイルする必要があります。

  go build -ldflags="-H windowsgui"

Go言語 - WALKでGUI - FileDialog

FileDialogの使用例。
ボタンクリックでFileDialogを作成し表示させています。
walk.FileDialog構造体を作成して、ShowOpenメソッドで表示させます。ダイアログがキャンセルで閉じられた場合には戻り値のokがfalseになり、trueの場合はFilePathフィールドからファイルパスを取得します。
特定の拡張子のファイルのみ表示させる場合には、Filterフィールドに設定します。例ではexeファイルのみと全ファイルを選択できる様にしています。


続きを読む