VS2008(SP1)が落ちる。
「ツールボックス」で「アイテムの選択」をすると100%落ちる。
VS2010との同居に問題があるのか、よくわからない。
しかも、サクッと落ちて、例のデバッグしますか?も表示されないので、気付かないほど。
ツールボックス使わなくても何とかなるからいいんだけど、ついやっちゃった場合、未保存コードがパァになるので、注意せねば・・・
VS2008(SP1)が落ちる。
「ツールボックス」で「アイテムの選択」をすると100%落ちる。
VS2010との同居に問題があるのか、よくわからない。
しかも、サクッと落ちて、例のデバッグしますか?も表示されないので、気付かないほど。
ツールボックス使わなくても何とかなるからいいんだけど、ついやっちゃった場合、未保存コードがパァになるので、注意せねば・・・
Windowsフォームアプリで入力文字を制限するのに、MaskedTextBoxを使うのはいいのだけれど、これ、マスクできる文字種が少なすぎるという欠点がある。
たとえば、16進数で可変長の文字列入力をさせたいなんて、単純なことなのにもう無理。
なんともし難い。
仕方なく、TextBox派生で、文字制限をかけるコンポーネントを実装。
でも、WndProcをオーバーライドしなきゃならんとか、コピペのことまで考えなきゃならんとか、まわりくどいことこの上ない感じ。
もっとスマートな方法があるような気がするのだが・・・
OnTextChangedはあっても、OnTextChangingは無いんだよなぁ。
この件。
性能まで考えると、やはり、アンマネージC/C++にしたほうがいいのかも知れない・・・
20100524_OverSslClientSetup.zip
TCP通信をSSL暗号化するものである。
マニュアルはまだない。
アルファ版でござる。
マネージャとサービスから成り立っている。
Yahoo!のメール設定をプリセットしてある。
Vector登録するまでには及んでいない(後述のIPv6とかに対応したい)ので、ここに置いておく。
.NET Framework 2.0~3.5xに対応している・・・はず(VS2010でビルドしたので、ちょっと不安)。
Windows 7の64bitでも、動く(32bitターゲットだから、WOW64上ってことになる)のを確認済み。
そうそう、サービスは起動後3分経つと自動停止することに加え、使用期限は2010年6月いっぱいに設定してあるので、もしも気に入って金払ってでも使いたいとかいう奇特な人いらっしゃればコメントを。
C#で勝手にDisposeしてくれる方のusing。
例外出てもDispose呼んでくれるので便利だけど、気になって確認したのでメモ。
まぁ、当たり前っちゃー当たり前だけど、後者は重要な気がする。
どんな場合でもDispose呼んでくれると思って、コンストラクタ等で例外出しまくると、意図しないことになる可能性があるってことだ。
20100521_X509Certificates_Test1.zip (実行ファイルの圧縮)
とりあえず、昨日のコードをごにょごにょして、ここまで解析できることがわかった。
でも、証明書スナップインで表示されるような「目的」を一部を除いた大部分で取得することができていない。
どうやって取ってきてるんだろうか・・・
証明書ストアにアクセスする必要があるので、コードメモ。
表示用に文字列にしたけど、ひとまずアクセスできることを確認。
使えそう。
サービスに限ったことではないが、msiインストーラプロジェクトで、Permanentプロパティの設定を間違えた。
これは、「アンインストール時に削除するかどうか」というプロパティではなく、「アンインストール時に残すかどうか」を決めるプロパティ。
#VS2010では説明が逆なので、迷う。正しくは、残す場合はTrueで、通常はFalse(残さず削除)。
これ、間違えたままインストールすると、インストール用レジストリに、そのキーとなるファイルのインストールカウント履歴らしきものを残すらしく、その後、Permanentプロパティを正しく設定したものをインストール&アンインストールしても、ファイルが残りまくるという現象が発生する。
これを解消するには、レジストリからキーとなっているファイル名(または単純にファイル名)に関連する部分を全部削除するしか方法はない。
要注意。
ポンコツながらも動くものができた。
今回のものは、Windowsサービス&GUIなネットワーク系アプリケーション。
まだ、ソケット状態の把握がうまくできていないため、公開するレベルではないけれど、なかなか良い。
こいつをいくらかちゃんとしたレベルに仕上げたら、また、Vectorに登録するとしよう。
VS2010だけなのか、未確認。
ユーザーコントロールを追加して、public EventHandlerを追加した。
しかし、コンパイルして、フォームに張り付けても、プロパティウィンドウにイベントとして表示されない。
[Browsable(true)]と、BrowsableAttributeを設定してもやはり表示されない。
なぜだ?
タスクバーの時計領域って、結構でかい。
もし、これを小さくできたら、スッキリするのになぁ・・・
・・・という理由はさておき、題材としては面白いので、通知領域(タスクトレイ)に超簡易アナログ時計をアイコン表示するアプリケーションを創っちゃうぞ。
覚書きも兼ねて、図解。
C#でござる。
画面キャプチャに全部含まれているので、コードは割愛。