potisanのプログラミングメモ

趣味のプログラマーがプログラミング関係で気になったことや調べたことをいつでも忘れられるようにメモするブログです。はてなブログ無料版なので記事の上の方はたぶん広告です。記事中にも広告挿入されるみたいです。

Ruby

Ruby 2 Fiddle/Win32APIでWin32 APIのUnicode版を呼び出す時はUTF-16LEエンコーディングが必要

Win32APIパッケージからFiddleパッケージへの乗り換えを初めてUnicode文字列(WCHAR, LPWSTR, LPCWSTR, OLECHAR, LPOLESTR, LPCOLESTR)を扱う関数、特にAnsi版が存在しないOLE関数周りで文字化けが起きて困っていました。 文字コードについて色々と調べた結…

Ruby 2 DOSISHなパス(「\」(バックスラッシュ)区切りのパス)を整形する

本文 File::globで取得されたファイルパスの様に始めからRubyで取得されたファイルパスなら良いのですが、環境変数やWin32 APIが絡んでくるとパス区切りに「\」(バックスラッシュ)が使われます(DOSISH)。今回はそれにとりあえず対処するためのコードです…