CLR→言語は古い?が使い方が新しいらしいプログラム(笑)今回は専門用語とハジケタお話の羅列(笑)
簡単じゃーん、と思っていた。何しろ、CLRときたらほとんど.NETでどう見てもVBです、有難うございました、みたいなくらいに慣れてくると楽ちん言語だったんで……。まさかそんな落とし穴があるとわ(苦笑)
実は、.NETというか、.NET FRAMEWORKと呼ばれる一連のシリーズ、どう言っていいのか判らないのだけれども、まぁ、なんだ、「悪さするプログラマもいるしさー、せきゅりてーせきゅりてーって世間もうるさいしさー、とりあえず、のっけとく?ってカンジィ?」みたく、とにかく、プログラムが悪さしない安全に動作するために、「あんたはここまでしかしちゃいけません」的なパッケージが存在していて、今ではそんな世知辛い制限の中で作ったプログラムを動かす、なんていうのが流行りらしいんです。ばしばしにINT13とかアセンブリレベルでアドレス吐いてコードすっ飛ばしてたのが嘘みたいだ(遠い目)
CLRなんてそれらの最先端らしく、「あれするな」「これするな」がお約束のように存在していて「今からぁ~そいっつぅをぉなっぐりにぃいこぅおかぁ~」とYaaYaaYaaな気分で色々とセキュリティはずししないといけないんですね(汗)
プログラムが実際に動くPC上で
.NET.FRAMEWORKのマイコンピューター>ALL-CODEをFullTrust
ったりめーじゃん、悪さ実行するためなんだからさぁ、悪いようにしないからさぁ、なんて言いながらセット
CLRストアドプロシジャのアセンブリをセットするデータベースに対してMasterデータベースから
ALTER DATABASE hoge SET TRUSTWORTHY ON;
go
実行したら、使用データベースに移動して、
GRANT EXTERNAL ACCESS ASSEMBLY TO [BUILTIN\Administrators];
go
「良いではないか」「良いではないか」といいつつ、これで、外部との接触OK。CLRプログラム実行PC上のローカルドライブにあるXMLファイルを読めるようになります。もちろん、テキストなんかもね。
ただし、これをやるのは良心回路が正常に働いている時がお勧めです。
やり方によっては……ごほごほ