プログラミング

xdoc2txtを使用しないテキスト抽出

勤め先の部門内ファイルサーバで、ずっとHyperEstraierによる検索システムを使用していたのですが、ここしばらく止めてしまっていました。停止した直接のきっかけはサーバのクラッシュだったのですが、検索システムの再稼働を先延ばしにしていたのは、インデ…

TopCoder SRM144 DIV1 (550)

次の550点問題は、組合せの問題です。 ・いろいろな種類の数当てゲームがある。ゲームのルールのリストが入力されるので、それを「当てやすい順」に並べ替えて返せ。 ・ゲームのルールは、「使用する数の範囲(1から10〜100)」「当てる数の個数(1〜8組)…

TopCoder SRM144 DIV1 (300)

やっぱりちゃんと勉強しなきゃ、ということでTopCoder SRMに挑戦してみることにしました。でもまだ自信がないのでPracticeだけ。 登録の手順などは、こちらを参考にさせていただきました。→ http://d.hatena.ne.jp/gnarl/20080828/1219893152まずは、Practic…

設定ファイルのバックアップ重要

職場で、Trac Lightningを使わせてもらっています。先日、使っていた2.2.3 → 2.2.5へアップデートとしたのですが、プロジェクトのバックアップを取った後、うっかりApacheのhttpd.confはバックアップを取らずに上書きインストールしてしまいました。一応、イ…

イディオムはセオリー通りに書かないとだめ

気づいてしまえば非常につまらないミスなんですが。 void some_class::some_method(int parameter) { int p; while ( p = m_pClass->some_enumerator(parameter) うんうん、m_pClassの指しているオブジェクトがなにかコレクションを保持していて、some_enume…

ベースクラスの関数シグネチャを不用意に変えてはいけない

会社で実際にあったバグ。とりあえずこんなふうに継承関係のあるクラスがありました。 class CBaseClass { public: CBaseClass() { } ~CBaseClass() { } virtual void TestFunc() { std::cout ほとんど同じなんだけど、最後のステップだけ違う処理をする2つ…

一部の日本語フォルダ名でインデックスが作成されない件、とその回避パッチ

結論 Hyper Estraier バージョン1.4.13を日本語Windows環境で使用した場合: estcmd gatherの検索対象に、0x5cで終わるフォルダ名があると、そのフォルダ以下はインデックスが作成されない。このため、検索漏れが生じる。 原因は、estcmdのディレクトリスキ…

Hyper EstraierのMinGW上での再ビルド

会社の部内サーバ検索用に、オープンソースの全文検索システム、HyperEstraierを導入してみました。簡単にセットアップでき、検索も高速でとてもいいですね!作者の方に感謝です。 バイナリパッケージも配布されていますが、今回、必要があってWindows用バイ…