2004-03-13[n年前へ]
■今日の疑問
Linuxでg++でアプリケーションを作るときに、起動されたアプリケーションが「そのアプリケーションが置いてある場所」を知るにはどんな関数を使えば良いものなのでしょう?ファイル出力などが必要ない(system()+whichを使ってパスをファイルに吐いて、というようなものでない)方法はどんなものなのでしょう?
一般的な方法はないと思います。Unixのファイルシステムでは、バイナリはハードリンクで複数のパスを持てますし、ファイル実体からそのファイルのパスを参照する方法はありません。(極端な話、アプリケーション起動後にそのバイナリファイルをunlinkしてしまえば、「パスを持たないけれど走っているアプリケーション」になります---「このプログラムは実行終了後自動的に消滅する」ってわけです)。Unix上で、お望みの動作を得るのによく見る方法は、 * argv0を見て、それが絶対パスならそれを採用 * argv0を見て、それが相対パスならgetcwd()して絶対パスに直す * そうでなければ、PATH環境変数をひとつづつ探すというものです。上記の手順はよく使われるので、ライブラリもいくつか存在すると思います。例えばglib (www.gtk.org) の g_find_program_in_path()等は使えると思います。ありがとうございます。川合さん。
2004-03-25[n年前へ]
■「こんいちは。私はスティーブン・セガールです」
最近、スティーブン・セガールくんから毎日SPAMが届く。
こんいちは。私はスティーブン・セガールですではじまり、
取除きなさいか ここにかちりと鳴らしなさい。で終わる自動翻訳をさらにヘンな添削をしたらしきメール。「こんいちは」「取除きなさいか」って言われてもなぁ。
2004-05-04[n年前へ]
2004-05-07[n年前へ]
■フルパワーで生きるということ
セーブしたら人並み以下のことしかできないような気がする。それじゃあ、私は誰にも認めてもらえない。「ペースを考えないとこれはヤバイな…」というときには、頭がそう考えるまでもなく体が自動的に赤信号を出したりする。あるいは、フルパワーを出そうとすると頭の何処かがショートしたり例外を発生してエンストしたりする。だから、そうでないうちはフルパワーでも良いのかも。
2004-05-22[n年前へ]
■視覚素子ハッキングソフト
「視覚デバイス(USBカメラなど)をリアルタイムでハッキングし、顔の肌色領域を自動抽出して顔の部分におなじみの笑い男マークを表示する」という視覚素子ハッキングソフトCatcher in the Rye。 from 骨ニュース
ちなみに、笑い男とはTVアニメ「攻殻機動隊STAND ALONE COMPLEX」に登場する、人の電脳に侵入し視覚情報を改ざんするほどの凄腕ハッカー。もちろん、「笑い男」"Laughing Man"も「ライ麦畑でつかまえて」"Catcher in the Rye"もサリンジャーの小説の題名。
■Powered
by yagm.net