何故あなたは例外が出るの…?

VSTO 2008 を使っての Excel 起動に何故か失敗してゲンナリ System.Runtime.InteropServices.COMException (0x80010001): CLSID {00024500-0000-0000-C000-000000000046} を含む COM コンポーネントのインスタンスを IClassFactory から作成中に、次のエラー…

絶望した! PathRemoveBackslash() に絶望したァ!!

取得したパスを他のプログラムに渡すべく、コマンドライン引数に渡す…という処理を書いたのです。 イメージ的にはこんな感じ。 # コマンドラインで書くとこんな感じ。 # スペース入ることがあるので "" で囲ってあげる >foo.exe "%PathInfo%" "%bar_param%"…

VSTO で追加したメニューの挙動がおかしい件の解決方法が何となく腑に落ちない件について

VSTOを使って、Officeのメニューバー・右クリックメニューに独自の項目を追加できるのですが、この子の挙動がどうもおかしい。 メニューを選択しても設定したコールバック関数が呼ばれない という謎のケースに遭遇。 何がどうなってるの… // C# コードイメー…

static変数なのに2つインスタンスができてるような… こんなの絶対おかしいよ

C++/CLI でふ コード /*---------------------------------------------* * ヘッダー * 重要なのは WindowActiveHooker::INSTANCE; * WindowActiveHooker::GetInstance() で参照してる。 *---------------------------------------------*/ ref class Office…

コレは出来ない…のかぁ… orz

void func<T>(T t, delegate void callback (T t, int foo)) { // 色々処理 int foo = hoge(); callback(t, foo); } 的なことをやりたかったんですが、仮引数の所で delegate が(多分)使えないアルねー…。 関数ポインタのノリで書いちゃったら全然駄目だった</t>…

OJTと題して実践投入させといて放置プレイさせといた結果がコレだよ!

とある新人の混沌魔書 (すてきなコード*1) class RozenSelectionChangedListener implements ISelectionChangedListener { private TableViewer table; (略) @Override public void selectionChanged(SelectionChangedEvent event) { ISelection selecti…

C# さん C#、あなたは何で推論してくれないの orz

C#

public static D safeAdd<D, C, K, V>(D map, K key, V value) where C : ICollection<V>, new() where D : IDictionary<K, C> { C list; if (!map.TryGetValue(key, out list)) { list = new C(); map.Add(key, list); } list.Add(value); return map; } C# *1 で少しメタメタな</k,></v></d,>…

そんな関数は(多分)どこにも無い…ッ!

MS Excelのアドオンを C# で作成中ー。さて、object Range::get_value(object) の戻り値で困りんぐ。 xlRangeValueDefault default 指定した Range オブジェクトが空の場合、Empty 値が取得されます。これを調べるには、IsEmpty 関数を使用します。 Range.Va…

Map を iteration する際に思ったこと

Map<String, Object> map = HOGEHOGE; for(Map.Entry&lt;String, Object> entry : map.entrySet()) { String key = entry.getKey(); Object value = entry.getValue(); } こうしちゃう所ですが、 Map<String, Object> map = HOGEHOGE; for(String key : map.keySet()) { Object value = map.g</string,></string,>…

generic を組み合わせた Java さんの挙動がよく分かりません orz

static public <K, V> Map<K, ? extends List<V> > safePut(Map<K, ? extends List<V> > map, K key, V value) { List<V> list = map.get(key); if(list == null) { list = new ArrayList<V>(); map.put(key, list); // だめ // ↑The method put(K, capture#2-of ? extends List<V>) // in the type Map</v></v></v></k,></k,></k,>

C#コンパイラ警告 CS0467 - メャbド グループを使用しています

C#

メソッド 'メソッド' とメソッド以外の 'non-method' があいまいです。メャbド グループを使用しています。 異なるインターフェイスから継承したメンバーが同じシグネチャを持つ場合、あいまいさに関するエラーが発生します。 コンパイラの警告 (レベル 2) C…

どれを呼ぶのか♪どれを呼ぶのか♪どれを呼ぶのか楽しみ♪(サイコロ振りながら

C#

『interfaceの実装』に関するお話!略して! 「「「「「白矢印!白矢印!」」」」」*1 C#の経験が浅いおいらは、次のコードでどっちの関数が呼び出されるのか分からず。 // C# interface IRozenMaiden { void func(); }; class Gin : IRozenMaiden { public …

tolua++ と class と enum と - ご機嫌斜め

Lua

次のような tolua++ に投げるコードがあったとしましょう。(class CCC; が、別ファイル の enum をメンバに持っているところがポイント) // test.pkg $#include "test2.h" enum A { AAA, BBB, CCC, }; class CCC { public: A a; B b; }; // test2.h enum B…

Officeアプリ開発者が必ず受けるであろうMSからの洗礼

何渡して良いかすらさっぱりわからんねコレ ※…と思ったら、PIA経由で Office 使うとちゃんと ヒント*は*出てきますね。 ↑は COM経由

VC#さんよぉ… お前さん何してくれたんじゃ…? orz - 捜し物はなんですか♪(チャンチャラン

2010-07-16 追記以下の記事はおそらく根本的に間違ってます。信用しないでください。^^;追加の情報が色々あるもまとめてる時間が無ぇー ExcelのCOMアドインを VC# で作ってみようのコーナー!ってことで、作り始めたは良かったんです…がー。 VC#さんから…

google app engine (java) の日時処理で大苦戦

GAE

# google app engine カテゴリってよりか、Java servlet というカテゴリな気もしますけれども…(ぉ ^^;Java Servlet で、日付処理って一般的(?)にはどうするんですかねぇ…。Servlet 内部では UTC なので、そのまま DateFormat で文字列化したモノを日本人…

Google App Engine でどうしても例外が発生しちゃうの

前任者からの引き継ぎで、Google App Engine 上のとあるファイルアップローダーの開発を引き継ぎました。Google Plugin for Eclipse を入れて Eclipse 上で開発 → ローカルデバッグするぜー! ってところまで来たのですが、DBにデータ書き込むぞーって所(==…

コマンドプロンプトで複数のコマンドを一括で実行する方法

Linux の場合、以下のように ";" で区切ればいくらでもコマンドが羅列でき、実行時に一括で実行してくれちゃいますがー $ cd kanaria; ls -al こんな事を Windows のコマンドプロンプトでやりたいなぁと思い、同じように ";" で区切ってコマンド羅列したとこ…

本当に細かい話 - NULLチェックと if文

変数a が NULL だったら、デフォルト値の*1b値を返して、NULL以外だったら a を返すよーは、a がOK であれば a を、a がダメだったら b を返したい というコードを書きたいという場合、超悩むのが「分岐条件をどうするべ」って所なんです。 …いや、NULLで比…

public Void func(); って何返せばいいのかしら…

public Void func() { return …!? } という感じに、戻り値の型に void ではなく java.lang.Void クラスを指定した場合って何を返せばいいのか…。void だから放置でいいんだよね!? と、最初は思ったのですけれども、コンパイルしてみると「値返せよ。死ねよ…

sendmail の転送先にプログラム指定した時、どんなデータが渡されるのかしら?

sendmail の aliases とか .forward で転送先を指定するとき、プログラムを指定することが出来ますがーどういうデータがプログラムに渡されてくるのかが判らなかったので調べてみました(ってか実験してみました)ヘッダー付きの生データで来るのかしら…? …

template と delegate & native型 と CLI型 - コンパイルできなくて死亡

あぁもう、C++/CLI は変態さんだなぁもおおおおおおおおおおお!!!!(右手がグーのまま震えながら 今日はこんなコードではまりました @ Visual C++ 2008 Express Edition SP1(コードに深い意味はないです) // C++/CLI struct NativeStruct {}; private …

template のノリで generic を使えなかったでござる(いやまぁそうなんだけど)

諸事情で C++/CLI を利用しています。 良いカオスっぷりですねコレ(ぉC++/CLI についてはよく知らない…ってか、C# も詳しく知らないわ、.NET についても詳しくない中ガリゴリ書いているのですが… やっぱり、template と generic は違うんだなぁーと実感した…

VC#2008EEでメニューアイテム編集時、全角スペースを入れると落ちる

VS C#

キターーー!! orz 別件で編集中に突然落ちたので、原因を探っていたらこんな結果になりました。 再現方法 再現させるには、この項目のtitleの通りなんですけれども C# でフォームに MenuStrip を配置する。 適当にメニュー名を決めて enter を押す。 メニ…

ぐぐるさんの Protocol Buffers ってメモリリークしてる気がするのかしらー

C++

諸事情で、google さんが提供してる Protocol buffers を利用しています。さて、VC2008EEで "#include <crtdbg.h>" しつつ作業してたら、終了後にリーク報告受けちゃいました。こういう場合は当然自分のコードを疑うわけですけれども(ぉ)、"int main(){ …

trac を はてな記法 で書いちゃってぐんにょり

プレビュー画面で はてな記法 がそのままダラダラと表示される姿を見た瞬間のうっへり度といったらもうね…… あああ! orz

strlwr と _strlwr / strupr と _strupr

VC

タイトルのように、引数に指定した文字列を 小文字 / 大文字 にするための関数として strlwr / _strlwr strupr / _strupr が居ることに気づきました…って、C標準関数 と Microsoft拡張関数の2種類…? いやでも挙動一緒臭いし、引数も一緒だし標準にあれば MS…

インテリセンスが効かない場合の対処方法(おいらの場合)

VC

おいらがメインで利用している Visual Studio は VS2003 なんですが、この子はインテリセンスがちょぃと弱いので*1^^;、My共有ライブラリちっくな物は VC2008EE でライブラリ開発プロジェクトを新規に作りそこでコーディング。 納得いく形になったら主開…

VS2003付属のMSDNライブラリにて - 似ているようで違うんですよMSさん…

VS

basic_ofstream::is_open() の項目を開くと、basic_ofstream::open() と同じ内容が表示されてうっへり MS的に見れば、未だに VS2003 使ってる方がうっへりですね。ハイ。# でも一番好きなの。

subversionのフックイベントが実行されなくて死亡

svn

subversion では、コミット前とかコミット後とかを Hook して任意のプログラムを実行できちゃったりしますがー今までHookなんか使ったこと無かった故に、どんなモンなのかと実験的利用してみるべく $REP_PATH/hooks の中に "post-commit" なシェルスクリプト…