kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

プログラム

サービスは何のため?

とっちゃんwrote: インストーラで簡単に設定できるんですけどねw(msiならw) それ以前に、知らないという人も多いかも...orzそもそもからして、サービス=ログインせずに動く便利な常駐物 という間違った認識が...(--;』 知らない人、多そうです。会社で作…

減らそう

お仕事プログラム。バグ解析でじっくり見直したら、かなり無駄なコードがあった。たとえば複数の場所で同じ意味のコードを書いていたり、似たような機能なのに、片方にしかないコードがあったり。最近コードの全体像をつかむ能力が衰えたかなぁ。バグを直し…

ACT 5.0続き

Application Compatibility Toolkit 5.0を使ってみる - 屋根裏部屋mkII改 やっとパッケージを作る編。ACT 5.0を使うとインベントリ収集もできて、なかなかよいですよ。今日は収集した情報の味方を書くはずだったのに…。

Visioオブジェクトへアクセス

というわけでコードをのっけました。うーん、try〜finallyの山…。インチ→センチ変換はいれてません。 リソースが見つかりませんでした。 今回からコード部分はFreeTextWrapperを使っています。なかなか具合がいい。導入にはりばてぃさんのエントリを参考にさ…

続:スタック・ヒープ・データ

id:koguma98さんとあきひろさんからのコメントありがとうございます。 C/C++は明確にスタックを意識させる言語になっていますが、ほかのほとんどの言語(といっても多く知ってるわけじゃないけど)ではあまり意識させませんよね。初期のFORTRANなんかではロー…

ちゃんと容量計算しよう

Visual C++ではプログラマがスタック、ヒープ、静的データを取り分けることができます。静的データはバイナリのサイズと起動時の使用メモリに影響を与えます。 今まで私も人が作ったところあまり見ていなかったのが良くないのだけれど、冷静に見渡すと、かな…

リリース作業は慎重に

いや、先週末からどうもミスが多くて…昔はそうじゃなかったはずなのに、最近加速度的にミスが多い。おかげで他の人に迷惑かけっぱなし。いや、内部で迷惑かける分にはまだしも、外に迷惑かけちゃいかんよね。本人は充分気をつけているつもりなんだけれど…最…

作る前に調べよう

リリース物件を格納するフォルダ構成を作るの面倒になって、「過去にリリースしたバージョンからフォルダ構成をコピーしよう」と思い立った。 copyコマンドでできなかったよな〜(一応確認) treeコマンドも違うよな〜(コマンドリファレンスの一覧を見る) しょ…

SQL Server 2005で第三、第四水準を使う

昨日のさらに続き。リソースが見つかりませんでした。 biacさんがSQL Server 2005でまとめられていた結果がありました。TFSのデータ層、Japanese_CI_ASで作られているんだけれど…どうしましょ。私の手元のSQL Server 2005では既定のプロパティからしてJapane…

続:JIS X 0213:2004

リソースが見つかりませんでした。 ひさしぶりにmkII更新。biacさんからトラックバックを…いただいたようです(^^;。DNSBLの問題のおかげではじかれたようですけど。 404 - ファイルまたはディレクトリが見つかりません。 それからもう一件、りばてぃさんから…

Binary度チェック

Binary Hacks - バイナリアン度チェック Binary Hacks発売記念として公開された高林さんのクイズ。Linux/GCC依存のことはさっぱりわからないので40点でした(^^;。まぁこんなものか。

RubyCLR

RubyCLR RubyはUNIX系のもの(Native Win32やcygwinで動く実装があることは知っています)というイメージが強かったので、あまり手を出す気にはなれませんでした。言語がRubyで.NET Frameworkのクラスライブラリが呼び出せれば楽になる…かな? たぶんまつもと…

SHIFT-JISの歴史的背景

古川さんのblogから。 WordPress.com WordPress.com 下のエントリのコメントがSHIFT-JISのデザインを担当された山下さんから。非常に興味深いお話。私も「なんで0xFD以降が抜け落ちているんだろう」と不思議に思っていました。歴史の空白のピースがうめられ…

IShellDispatch4.ToggleDesktop()を抑止したい

クイック起動のところにある「デスクトップの表示」機能、XPなどではシェルのIShellDispatch4.ToggleDesktop()を呼び出すことで実現できます。ところがこれは最小化させないようにしたウィンドウも最小化してくれます(メッセージボックスとか)。 私の手元に…

UACを無効にするのは…

om's systemさんのところでVistaのUACを無効にする話…が出ているのですが、少なくともデベロッパはUAC有効のままでがんばって欲しいと思います*1。 XP時代までの「動かない?じゃあAdministratorユーザで動かせってマニュアルにかいとけ」と同じようなノリで…

Binary Hacks

あのBinary 2.0カンファレンスが本になる?どうやらマジらしい…。出たら手に取ってみようかな。 Binary Hacks in Action (15/15) 首藤さんの日記(9/8分)より

RSS同期

与太話です。 livedoor readerやRSSBandit,IE 7.0でいくつか同じRSSを取得していると未読の山から既読を判定するの面倒とか思うことがあります。読むツールの方を統一しろよという話はさておいて。Ajaxを採用して、操作性の高いWeb型リーダも出てきたけれど…

Vistaで変わるAPI

社本@元ネオニート Blog - 社本@元ネオニート Blogより Windows Vista® および Windows Server® 2008 アプリケーション互換性解説書 VistaではIsBadReadPtr(), IsBadWritePtr()が使えなくなると読めるけれど、その後に付けられたNyaRuRuさんのコメントでは…

続:動画のサイズを取得する

Technetを見ていたら、jpegのサイズだけれど取得方法が載っていました。これを少し変えれば(photo→video)OKか…と思っていたのだけれど、そう甘くなかった。 .JPG ファイルの縦と横のサイズを表示する方法はありますか この方法は一度Windows Media Playerに…

life hackの俺様プレイヤー

FEATHER 2004が起動しているだけでもものすごくCPUを占有するので、Windows Media SDK読みながらえいやぁとMedia Playerを貼り付けたプレイヤーを作ってみました。ガワだけはそれこそ10分もあればできるのですが、一点だけちょっとわからないところがありま…

移行時の問題

あきひろ wrote: >すぐに以前のバージョンを再開できなかったのも典型的な失敗プロジェクトでありがちなパターンでしょうか。 ですが現実問題「移行に失敗したときのための準備が必要なので、お金をください」は、なかなか受け入れてもらえない提案ですねぇ…

空白を含むファイル名

リリース物件の評価をしていて、「保存できない」という報告を受け取る。あれ?と思うと、空白を含むパス(「デスクトップ」の実パス)へ保存しようとしていたから。今回はVB6.0で作っていて、パス解析処理を作る時間がなかったので禁断のMSDN – Microsoft Dev…

_lseeki64で戻らない

FILE* fp; _int64 liPrev; char szReadBuf[513]; fp = fopen("test.txt", "rtS"); do { iRet = fgets(szReadBuf, 512, fp); if(szReadBuf[0] != '0') { _lseeki64(fileno(fp), liPrev, SEEK_SET); //(1) break; } }while(!_eof(fileno(fp))); fclose(fp);昨…

続:1行読む

昨日のエントリに対してbiacさんからトラックバックをいただきました。ありがとうございます。結局心をおらずにSDKのみでがんばってます。ほんとにしんどいけど。C++とWindows SDKと一部Cランタイムで作ろうとするとほんとつらいです。大文字にするのも「あ…

テキストファイルの1行を読み込む

今作っているのはまさにCSVファイルの読み込み…とはいっても、桁まで認識する必要はなくて、行単位で処理すればいいのですが。で、何万行というファイルを一行ずつopen/seek/read/closeしていたのではかなり遅いので、バッファリングを組み込んでいます。 MF…

整理整頓

会社のお仕事で、新機能を追加しようとしてソースをチェックしてみると…1200行くらいの関数が二つorz。しかもその二つの関数、95%位が同じコード(;_;)。 幸いにもブロック単位で前後との依存関係がほとんどなかったので、ばっさり関数外だし。たぶん一つ作っ…

考えの溝を埋める

自分用に作る場合、基本的に趣味100%でいいのだけれど、マス向けの商品となるとちょっと違う。ある程度は開発者の嗜好が反映されるけれど、どんなターゲットに、どんな用途で使われるかということを想定して製品企画があるはず。 しかし、「このソフトを使う…

あなたが管理できるソースコード行数は?

大規模なソースコード、何万行までいじれますか? | スラッシュドット・ジャパン デベロッパー まぁ、一概には言えないかな?たとえばクラスライブラリや統合環境が充実している言語とCみたいにほとんどないところから始めるのでは1行の重みも違うし。VS2005…

続:CreateDCでACCESS_DENY

ご期待の方からのコメントありがとうございます(^^;。 とっちゃんwrote: 原因究明のために、自分で、処理してみるというのは? HGLOBAL で用意されていれば、AfxCreateDC() でたしか HDC が作れたはず(^^; あーMFC無しなんですが(^^;(まぁ一緒ですね)、原因…

CreateDCでACCESS_DENY

DEVNAMESとDEVMODE構造体を自前で作るとCreateDCでACCESS_DENY(GetLastError()が5)なのに、PrintDlg()で表示したプリンタダイアログからもらったPRINTDLG構造体の中のDEVMODE,DEVNAMESのハンドルを渡せばOK…という現象が手元でおこっている。 実際CreateDCや…