おいふぉりーのぶろぐ

きっと趣味のブログに違いないです!!

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

TortoiseSVNのCOMインターフェースを使ってみる

TortoiseSVN というバージョン管理ソフトには SubWCRev というプログラムが付属していて, バージョン管理下のファイルのリビジョンや更新日時を取得することができます.今回は SubWCRev の COM インターフェースを使って,自作プログラムから SubWCRev を介してバージョン管理下のファイルの情報を取得してみたというお話.

ここでは,COM インターフェースを使って SubWCRev の機能を呼び出すために,IDL ファイルからインターフェースを定義するヘッダー ファイルを作成してみます.次のように MIDL コンパイラを呼び出します.

midl SubWCRevCOM.idl /notlb /h SubWCRevCOM_h.h

上記のコマンドを実行すると,SubWCRevCOM_h.h と SubWCRevCOM_i.c が作成されます.SubWCRevCOM_h.h にはインターフェースの定義が,SubWCRevCOM_i.c にはクラス ID やインターフェース ID が含まれています.

で,後はプログラムを書くだけ.詳細は続きに載せておきます. 書いたプログラム tsvn_com.cpp と SubWCRevCOM_i.c を Visual C++ でビルドすれば完成です. このプログラムでは,コンパイラ COM サポートを利用してます. _COM_SMARTPTR_TYPEDEF マクロを使って ISubWCRevPtr というスマート ポインタ(侵入型参照カウント方式)を定義してます.スマート ポインタなので,参照カウントの増減を自動でやってくれてとても便利です.

プログラムの動作ですが,第一引数にバージョン管理下のファイル名を渡すと, リビジョンと更新日時が標準出力に表示されます.

[TortoiseSVNのCOMインターフェースを使ってみる]の続きを読む
スポンサーサイト
  1. 2011/05/11(水) 19:02:39|
  2. ソフトウェア開発
  3. | トラックバック:0
  4. | コメント:0

パソコンがやってきた

復活した引越し業者から荷物が届いた.

と言っても,布団とパソコンしか無いのだが…

パソコン関連で足りないものがないか起動チェック☆

起動成功!!

パソコン ラックなんて高級なものは無いし,みかん箱も無いので,キャ○ン箱で代用.

そうそう,アイロン台って手ごろな大きさで便利だね☆と思った

pc_setup.jpg
  1. 2011/04/15(金) 21:51:27|
  2. 雑記
  3. | トラックバック:0
  4. | コメント:0

生存確認情報発信

取り急ぎ…生きてます☆(親族も無事でした)

このブログは趣味のブログということで,あまりプライベートなことは書かない主義だけど…先月は大変な震災が起こったので,ちょっぴり事後報告です.

さて,先月までは東北地方のとある大学の学生で,実家暮らしだったのですが,3月11日はたまたま大学関連の出張で宇都宮のとある会社にいました.そのとき東北地方太平洋沖地震が起こったわけですが,宇都宮も震度6強,かなり揺れました.電気,水道,ガスもたしか2日間くらい止まりました.東北新幹線も止まったので,当然実家に帰ることもできず,1週間ほど出張先の会社でお世話になることに…その後,関西の内定が決まっていたとある会社に早めに入寮させていただきました.

実家に帰れず,本当に身一つで来てしまったので,色々買い出し…着る服もないし,ノートパソも実家に置いてきてしまったし,それなりに散財して調達.インターネットの回線工事も今日やっと完了して,落ち着いてブログを書いているところです.

先月は本当に色々な人にお世話になりましたが,昨日から一応社会人になってしまったらしいので…取り急ぎ給料分を働けるスキルを取得するのが当面の目標でしょうか.


↓ところでコイツらがごちゃごちゃ邪魔な件について(モデム,ルータ,光電話端末,無線LANアクセスポイント)…もうちょっとなんとかならんかなと…板買ってきて貼り付けの刑にするか

net_device.jpg
  1. 2011/04/02(土) 11:26:54|
  2. 雑記
  3. | トラックバック:0
  4. | コメント:0

Hotfix の確認をしませう

とある C++ のプログラムを組んでいて,STL の TR1 を使って正規分布の乱数を発生させているコードに問題が・・・.どんな問題かというと,あるマシンではコンパイルすると正常に動作するが,別のマシンでコンパイルし直すと,無限ループに陥ると言う問題.

2, 3 時間試行錯誤し,さらにふて寝した結果,最終的にそれぞれのマシンのヘッダーファイル "random" を diff したら,1 行違っていることを発見.

違っている部分をキーワードに検索かけてみたら,こんなのが出てきた↓

VC9 SP1 Hotfix For The vector> Crash

自分がはまった問題は 5 番目のこれ↓

5. Random distributions were broken, triggering infinite loops and emitting bogus results.

この Hotfix を適応してるマシンと,適応してないマシンで動いたり,動かなかったりというわけでした.

あ゛ー,俺の 2, 3 時間+ふて寝に費やした時間を返せー.と思いつつ,どのマシンにもちゃんと Hotfix 入れないと駄目だなとちょっと痛感.


しばらくして・・・

ん Hotfix KB962219 のインストールがうまくいかない.どーなってるの?特にエラーは出ないけど,random ヘッダの内容が変わってない.仕方なく,正しい random ヘッダをうまく動作してるマシンからコピー.なんか,しっくりしないけど.

  1. 2010/12/12(日) 14:59:41|
  2. ソフトウェア開発
  3. | トラックバック:0
  4. | コメント:0

ロジテックのUVCカメラドライバのプロパティに直接アクセスするには?

ロジテックの UVC (USB Video Class) カメラをより詳細に制御する方法を見つけたので,メモメモ.ちなみに,まだ試してないです.

DirectShow を使って UVC カメラからの取り込みをするとき,露出の設定とかをするとき,通常は DirectShow で用意されている IAMCameraControl インターフェイスIAMVideoProcAmp インターフェイスを使います.ただし,あらかじめ定義されている項目に long 型(整数型)で値を取得・設定できるだけです.(あと,経験上,カメラによっては思い通りに動作しなかったり…)

そこで,DirectShow では直接ドライバ固有ののプロパティにアクセスでするための IKsPropertySet インターフェイスというのが用意されています.このインターフェースを使うと GUID で識別されるドライバ固有のプロパティにアクセスできます.

必要となる GUID ですが,こんなページを発見しました↓あ゛ーあ,もっと早く知ってれば色々と使い道が…カメラに付いてるLEDも制御できるのね☆

http://www.quickcamteam.net/documentation/how-to/logitech-uvc-driver-public-property-set

てゆーか,RAWデータのストリーミングなんてできちゃうんだwktk.QuickCam Pro 9000, QuickCam Pro for Notebooks, または QuickCam Orbit/Sphere AF でしか使えない雰囲気ではあるけど.

ということで,時間があるとき試してみよ~っと.

  1. 2010/10/18(月) 23:46:28|
  2. ソフトウェア開発
  3. | トラックバック:0
  4. | コメント:0
次のページ

来客数

プロフィール

Euphorie

Author:Euphorie
"おいふぉりー"って呼んでくださいな☆
ハードウェアとかソフトウェアとかの開発に興味があったり。。。
連絡先は上の画像。

最近の記事

最近のコメント

最近のトラックバック

月別アーカイブ

カテゴリー

ブロとも申請フォーム

この人とブロともになる

ブログ内検索

RSSフィード

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。