掲示板お問い合わせランダムジャンプ



この広告は30日以上更新がないブログに表示されております。 新しい記事を書くことで広告を消すことができます。

Top Index

2014年03月21日
GACに登録されたDLLの物理パスを調べる
GAC

参考:GAC(グローバル・アセンブリ・キャッシュ)からファイルを取り出すには?
http://www.atmarkit.co.jp/fdotnet/dotnettips/846extratfromgac/extratfromgac.html

・GACのパス
%windir%\assembly

・GACの中身を見る(没その1)
エクスプローラーに「%windir%\assembly」と入力する。
すると通常のフォルダ表示とは異なる専用の画面が出てくる。
インストールされているかどうかはわかるが、物理的な情報は分からない。

・GACの中身を見る(没その2)
コマンドプロンプトで「%windir%\assembly」にアクセスすると普通に見える。
が、見づらい。
なお、GACディレクトリ構造はこんな感じ。
/%windir%\assembly
├GAC
├GAC_32
├GAC_64
├GAC_MSIL
├NativeImages_v2.0.50727_32
├NativeImages_v2.0.50727_64
├NativeImages_v4.0.30319_32
├NativeImages_v4.0.30319_64
├temp
└tmp

※フレームワークのインストール状況によって差あり。
※同フォルダの意味は冒頭のリンク先参照。

・GACの中身を見る(採用)
Windowキーからスタートメニューを開き、「プログラムとファイルの検索」入力欄に「%windir%\assembly\GAC」とフォルダ名まで指定して入力。
すると普通に見える。
ちなみに「上のフォルダ(%windir%\assembly)」に戻っても専用の画面はでないので、とても見やすい。
※エクスプローラーで「%windir%\assembly\GAC」と入力しても「存在しない」エラーがでるので注意。

なお、GAC以下のディレクトリ構造は以下のとおりで、最下層にdllファイルが存在する。
GACにあるdllを強制的に読みたい場合はこの物理パスを使う。
/GAC
└アセンブリ名
 └Version__PublicKeyToken
[ 投稿者:mk3008 at 16:53 | .NET Framework | コメント(0) | トラックバック(0) ]

2005年02月05日
ArrayListとCollectionの違い
ArrayList
クラス。
必要に応じてサイズが動的に増加する配列

Collection
オブジェクト。
VB6のCollectionに相当する

クラスとオブジェクトの違いを説明するのは難しいので、そのあたりはオブジェクト指向の本を見てください。

共に、Add・Removeメソッドを持っており、動的にサイズを変更できる配列みたいなものです。
また、GetEnumeratorメソッド(列挙子の取得)もあるため、配列の中身を取り出す方法も同じ構文が利用できそうです。

が、CollectionをMSDNで調べると、「VisualBasic言語リファレンス」のカテゴリに属し、ArrayListは「.NET Frameworkクラスライブラリ」のカテゴリに属します。

・・・
これが意味する正確なところはわかりませんが、一般的と思われる「ArrayList」を使うことにします。

蛇足ですが、他の言語で配列を扱うクラスに「Vector」クラスというものがあるそうですが、VB.NETにはないので、ArrayListが代用で使われるみたいです。
[ 投稿者:mk3008 at 13:52 | .NET Framework | コメント(0) | トラックバック(0) ]

2005年01月27日
.NETとWin32APIの対応表
NuLL氏の日記「Win32APIと.NET Frameworkとの対応 」より

便利そうなページですね。
Wordファイルを早速ダウンロードさせていただきました。

ちなみに .NetFramework ではグローバルフックはできない([HOWTO] Visual C# .NET で Windows フックを設定する方法)そうです。

ま、あんま使わないか。
[ 投稿者:mk3008 at 23:39 | .NET Framework | コメント(0) | トラックバック(0) ]

2005年01月23日
逆コンパイルと難読化
正直、いまさら感が漂いますが、こんな記事がありました。

@IT .NET逆コンパイラとコードを難読化するDotfuscator
MSDN Visual Basic .NET または C# コードのリバース エンジニアリングを防ぐ

要約してしまえば、
「.NETFramework でコンパイルしたファイルは比較的簡単に逆コンパイルができてしまう」
「これはコンパイル済み中間言語の宿命であり、Javaも同様の問題がある」
「Dotfuscator のような難読化するツールをつかうといいですよ」
という感じ。

ちなみに、「Dotfuscator」という製品の廉価版がVisualStudio.NET2003にはついているそうですが、VB.NET2003 Standard にはついてなさそうです。

今のところ、ソース見られたからといって、セキュリティ上問題となるような製品をつくったり、機密にするほど素晴らしいロジックを考えたわけでもないですが、なんかへこみますよねぇ・・・

パスワードなどの認証処理などを組み込む場合は注意したいものです。
(どうやって注意するかはそのとき考えるつもりだけど)
[ 投稿者:mk3008 at 02:00 | .NET Framework | コメント(3) | トラックバック(1) ]