misc.log

日常茶飯事とお仕事と

業務日誌.NET

クロスサイトリクエストフォージェリ(CSRF)

昨夜、ASP.NETのページでボタンなどが押されてポストバックが起きる際に、最初に「Anti-CSRF Token」とタグ付された文字列を含むPOSTが飛んでいるのを見つけて、「なんだっけ?」と思ったのをとりあえず片づけておきます。CRSFはクロスサイトリクエストフォ…

ASP.NETでやりとりされるViewstateの内容を読み解いてみたいがうまくいかない(2)

先日の続き。ASP.NETなどでのページ遷移の際にくっつく情報「Viewstate」の中身をのぞき見してみたいという課題の続き。環境はASP.NET + .NET Framework 4.5、サーバーはWindows Server 2012にIIS8.0という状況で、簡単なASP.NETのページを作り、テキストボ…

Viewstateが使っているシリアライザー(LOS/Limited Object Serialization Formatter)

http://www.backyrd.net/entry/20131026/1382777890 の続きです。 先ほどのViewstateに関する調べ物の過程で、ASP.NETがViewstate情報の生成と解読に用いているのはLOS Formatter(Limited Object Serialization Formatter)だという話を見つけました。 ビュ…

ASP.NETでやりとりされるViewstateの内容を読み解いてみたいがうまくいかない

※現時点ではまだ答えにたどり着いていません。下記内容は作業過程のメモですWebアプリケーションが持つ、サーバーとの情報連携方法の1つに、ビューステート(Viwestate)と呼ばれる情報に値を載せてやりとりするという方法があります。ASP.NETで用いられるコ…

IIS 8.0 + .NET Framework 4.5でASP.NETアプリを配置してみる

Visual Studio 2012 + .NET Framework 4.5で作成したASP.NETアプリを、Windows Server 2012上で可動するIIS 8.0の環境に配置してみたい…のですが、なかなか上手くいきません。 配置用ファイル一式の用意 Visual Studio 2012には、Webサーバーと連携して一式…

IIS 8.0でASP.NETを利用可能にする

仮想環境に構築したWindows Server 2012にIISを入れて、ASP.NETのアプリを動かしてみよう……と思ったのはいいのですが、とりあえず 作ったアプリの配置方法がわからない おまけになんかIISでASP.NETが使えてないっぽい というので少し行き詰まってしまいまし…

Oracle DBのNumber型をSingleで受けたら誤差った

絶対忘れてたぶん次も調べるだろうからメモっておきます。やったのは私ではないのですが、相談を受けてちょいと調べました。 環境 .NET Framework 3.5 + C# Oracle Database(バージョン不明) 起きたこと Oracle DatabaseのNumber型(少数含む)をDatasetで…

Internet Explorerからの通信内容を確認する

ASP.NETとかで作ったページが実際にどのような通信をサーバーと行うかってのを見たかったので調べてみました。へぇ……この機能が使えたんだ…って感じ。詳しくは下記のMSDNサイトにて。 Using Windows Internet Explorer Developer Tools Network Capture http…

C#本を買っておこう…

だめだやっぱ1冊は何か買わないととっかかりが難しい。まじめになにか言語をやるのって久しぶりだから。プログラミングC# 第6版作者: Ian Griffiths,Matthew Adams,Jesse Liberty,鈴木幸敏,首藤一幸,株式会社情報技研出版社/メーカー: オライリージャパン発…

Visual Studio 2012 Premiumで新しいプロジェクトを作成できない

Windows 7 32bit版にVisual Studio 2012 Premium Editionをインストール後、Windows Updateを実行。50個くらいのアップデートを適用しました。その後、Visual Studio 2012を起動し、プロジェクトを新規作成しようとすると下図のようなエラーが。 制約 Contra…

日本語フォント名から英語フォント名を取得する

昨年の話なんですが、記録し忘れていたので。米国製のコンポーネント(GUIを伴うもので、テキスト入力なども処理する)を利用していて、フォント名プロパティに日本語フォント名を指定すると、次にフォント設定を表示させたらフォント名が文字化け、おまけに…

VB.NETでのサロゲートペア文字の取り扱い

文字のチェック処理を扱う必要が出てきたのでテストデータを作っているのですが、サロゲートペアがどのように扱われるかについて勘違いしていました。たとえば、U+29E3D、「ほっけ(魚+花)」という文字ですが、これはプログラム中では以下のように取り扱わ…

コードカバレッジ分析ツール opencover

twitterで制作者ご本人から紹介いただいたので、とりあえずメモっておきます。これは8月9月で実際に使ってみよう。 opencover https://github.com/sawilde/opencover

64bitアプリと32bit DLLの混在

意外に実験したことが無く、結構即答で答えられない質問だったのでしらべてみました。64bit用に対象アーキテクチャをx64としてビルドされた.NETのアプリケーションから、32bit用、即ちx86用としてビルドされたアセンブリを参照して実際に動かせるのか?とい…

ODP.NETと.NET Framework 4.0

.NET Framework 4.0に対応したODP.NET(Oracle Data Provider for .NET)は、Oracle 11g対応のODP以降しか無いのですね。10g用として公開されているODP.NET(ODAC 10.2.0.2.21 に含まれるもの)は、.NET Framework 1.1と2.0用。では、以下の疑問はどう解決す…

.NET Framework 2.0から4.0への移行

内容はまだ読めてないので、とりあえず公式情報の所在だけメモしておきます。 .NET Framework移行センター/.NET Framework 2.0 ~ 3.5 から .NET Framework 4 への移行 http://www.microsoft.com/ja-jp/net/migration/document4.aspx .NET Framework 4移行ガ…

高いツールを使うか、安いツールを使うかの判断

どうやら周囲でVisual Studio 2010や2012のテスト支援機能をフルに使わず、各種外部ツールとの併用や組み合わせで自動テストとカバレッジの検証を行う方針を決めた様子……相談してくれればアドバイスするんだけど、きっと難しい話が嫌だから避けられたな(笑…

Visual Studio 2012はWindows XPにインストールすらできないのな

いやまぁ、今更XPも無いので別にいいのですが……。Visual Studio 2012を使っての開発環境確認作業が入ったので、既存のXP環境VMを展開してインストール……できないよ!wwというわけでWindows 7のVMを引っ張り出して起動中。マイクロソフトの情報はこちらから。…

.NET、DLLの修正で参照元も全部ビルドし直すのか?

職場にて。質問を受けたのですが、即答できなかったので調べました。以前も同じような調べ物をした覚えがあるのですが、記録していなかったので自分用メモもかねて。ちなみに開発環境はVisual Studio 2005、.NET Framework 2.0です。 厳密名を持たないDLLを…

メモ: DataTableとSelect

DataSetに対する検索に関して。基本は「マイクロデータベース」なのでSQLと同じ書式で検索かけてやる必要があるんですね。ちょっと今は余裕ないので、詳細はいずれきちんと調べて把握しよう。 MSDN/DataColumn.Expression Property http://msdn.microsoft.co…

TextBoxのDisable(Enabled=False)とフォーカス移動

テキストボックスなどにフォーカスがある状態で、そのテキストボックスがDisabled(Enabledプロパティ = False)にされると、フォーカスって次のTabIndexを持つコントロールに移るのですね……。知ってたようで知らなかった仕様。

Windows Serviceのデバッグを簡単に行う方法

時間が無いので手短にメモ。Windows Serviceのデバッグはいろいろと面倒ですが、サービスの登録や動作環境さえ整えば、以下の方法で簡単に実施できます。 OnStartメソッドに「Debugger.Launch()」と書く サービスを開始する 「Visual Studioでデバッグします…

Local System AccountとWNetAddConnection2命令

Windowsサービスとして動くアプリを作成中。 WNetAddConnection2命令を使ってネットワークドライブ(共有フォルダ)に接続する処理で、何度やっても接続エラー「1312」が発生するという問題に遭遇。答えはどうやらサービスの稼働アカウントらしい。 CodeProj…

フォームが意外な方法で強制最大化されてしまった

最大化ボタンを殺して作成されている業務アプリケーションがあったのですが、とある方法で最大化されてしまいました(笑)。その手段とは 仮想環境(VMware Workstation)上のWindowsからその画面を開く(フルスクリーンで) VMware Workstationのフルスクリ…

フォーム内のテキストボックスに対するペースト処理を事前にキャッチする

共通ライブラリとして作成した部品類の単体テスト結果をログとして残すために、ペースト処理などの状況もログにだすべく、IMessageFilterを使ったメッセージの事前取得を試みました。ところが……テキストボックスを貼り付けたフォームに対してIMessageFilter…

文字コードと文字種チェック

とりあえず現時点ではまとめられないのでメモを残しておきます。文字種チェック処理を書く必要が出てきたのですが、厳密に実装しようとするといろいろ考えないといけないことが多く、正直参りました。 コード「A0/FD/FE/FF」に関する情報 スレ立てるまでもな…

Visual Studioのインストールでイラっとする瞬間

どうでもいいはなしですが。 Visual Studio 2005をインストールしていると、この人の挑発的な視線でイラッとします。

アセンブリ同士の比較で差異を洗い出すツール

仕事メモ。プロジェクトの納品前作業の精度を上げると言う話で、以前購入してもらったNDependを使った方法を考えていたのですが、ほかのツールは無いのか?と思って調べてみました……。あんまりないのな。 NDepend 商用ツール。依存関係の洗い出しなどに加え…

マイクロソフト製品のライセンスについて勘違いしてる

※実際マイクロソフトのライセンス体系は難しく、刻一刻と変わっているので、本当に仕事で使う人はきちんとマイクロソフトの営業さんに問い合わせてください。ここに書いた内容は2013年時点のもので古くなっています。職場で、Visual Studioのライセンスが開…

Oracle 11gと10gと発行者ポリシー

Oracle 10g対応のODP.NET(Version 2.102.5.0)などを使っている環境のODP.NETその他を、いきなり11gのものに入れ替えて動くだろうか、という話が職場で起きている。実際に動いたという話も出ているので(試した人がいる)、発行者ポリシーによってバージョ…