.Net

サテライトアセンブリがロードできなくなったように思ったがなぜか回避できた

Message.resx でニュートラルカルチャ用の文字列リソースをごりごり書いて、Message.ja.resx でjaカルチャ用の文字列リソースをごりごり書いていたところ、Type型からAssemblyを生成してインスタンスを作ろうとしたところ途端にロードできなくなりました。 …

DataViewGridで行ヘッダを右クリックして行操作メニューを出す

行操作メニューを出す VB6時代に、確かポップアップメニューという名称だったか、使った記憶があるのですが、.netになってからは知りませんでした。 http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=1268039&SiteID=7 によると、ContextMenuStrip…

xsdからvbクラスを生成する際は自前で名前空間を指定しなければならない

xsd.exe (xsdファイル名) /classes /l:vb /n:(名前空間) クラスファイルに、単純に namespace (名前空間) を追加するだけです。プロジェクトの名前空間からの相対的な名前空間を指定せずにフルの名前空間を指定すると失敗します。

Liquid XML を使ってみる

id:yellow_73:20081113#p4 のつづき。 http://www.liquid-technologies.com/ の、Liquid XML をダウンロード、インストールしてみました。 ダウンロードできるモノは、フリー版・有償30日トライアル版の二重になっていて、起動時に選択します。また、本体の…

Visual Studio 2008 の XSDデザイナは貧弱なので他の製品を探してみる

VS2008のXSDデザイナは貧弱で、どこかで対応プラグインの設定が書き変わって、別のプラグインが動いているのではないかと思ったぐらい。 で、Googleさんに聞いてみたら、 http://www.ailight.jp/blog/kazuk/archive/2008/05/27/26357.aspx にたどり着く。 貧…

UAC対策をしないといけないことに気付くができそうにない

Vistaには、UAC(User Account Control)機構があり、管理者グループのユーザでログインした際に二つのトークンを作って、通常は管理者権限のないトークンを使わせ、管理者権限が必要な時にはプロンプトを出して確認させたうえで管理者権限のトークンを渡す、…

gpx1.0を読んでみると失敗した

gpx 1.0 は破棄されたっぽいのですが、それでも1.0で出してくるものがあったので、読めないかテスト。 あいかわらずxsd.exeでクラスを作って、これをシリアライザに食わせたところ、次のようなエラーが出ました。 error CS0030: 型 '...gpxTrkTrksegTrkpt' …

複雑なルートを経由してGarminのトラックをシェープにする

Garmin eTrex のトラックをシェープにしたくなりました。 まず、カシミール。いいですねこれ。これで難なくトラックを収集。で、GPX形式で出力。 GPXについては、スキーマが出てるのでVisual Studio添付のxsd.exeを使ってクラスを生成。でシリアライザにデシ…

50mメッシュが入らんかった

ディスクスペースが無くなったと。 うーん…。

50mメッシュの全国分をやってみた

ダウンロードして全部展開したら、xmlファイルが4728。 カウンタを仕込んでいたのですが、ポイント数は、170276568。ダンプ形式のファイルサイズは10ギガ。XMLからダンプ形式への変換には8時間ぐらいはかかってるっぽい(タイマは仕掛けてなかったから)。 ま…

基盤地図情報50m標高を変換してみた

まあ、仕様書とにらめっこして、データを取っていけばいいだけなので問題なし。読み飛ばしで問題があったんですが。 XPathを使ってみた ファイルシステムよろしく "/" で要素を区切ってパスを表現して、このパス条件に合致する要素を引き出すというもの。た…

VS 2008 の SP1 が出たらFirefoxに何か入った

Visual Studio 2008 の SP1 が8月11日付でリリースされました。 とりあえず入れたまでなのですが、ひとつ。 Firefoxアドオンに"Microsoft .NET Framework Assistant" というのが入ります。Firefoxシラネみたいな態度だったのに、こはいかに。 このアドオンは…

同じ文字を指定個ならべた文字列を作る

たとえば "0" を 10個 並べた文字列を生成するには、 new System.String("0"c,10) 知らんかった…。 N BASIC とかを思い出しながら、なんかあったよなと思ってたら、SPCとTABでした。

型チェック

System.Type型を使って、オブジェクトの型チェックを行ってみます。 Dim t As System.Type Dim obj As Object (代入省略) If t is obj.GetType() Then ' objはt型 ElseIf t.IsInstanceOf(obj) = True Then ' objはtから派生したクラスのオブジェクト End If …

DataSetの構造をXmlSchemaに変換する方法なのかも知れない

DataSet::WriteXmlSchema があるのと、XmlSchema.Read があるので、 メモリストリームに書いてバッファを取り出し読み込むということで、とりあえずできそうですが、どうなんだろう…。 どうなんだろうといいつつ、やってみました。 Dim ds As System.Data.Da…

リソースから画像が取れない

リソースにpng画像を放り込んで、そうすると、勝手にプロパティを作ってくれて、そのプロパティでは、ResourceManager.GetObject() を実行して、リソースを取りだしてくれます。 で、.Net Compact でやってみると、NotSupportedException が出ました。メッセ…

フォーカスされてるじゃないか

id:yellow_73:20080613#p1 のつづき。 まず、イベントハンドラが拾ってくれない、というのは間違いでした。 それから、背景色変更は別のプロシージャで行なっていて、Enterイベントハンドラからそのプロシージャに回しているのですが、そのプロシージャでの…

フォーカスされない?

Controlを継承してオリジナルなコントロールを作っていたところでハマっています。 Enterイベントを拾って、フォーカスを得ると所有しているラベルの背景色を変えるというものですが、Enterイベントを拾ってくれません。Leaveイベントは拾うのに…。 他の所有…

ユーザコントロールのローカル化が一部でできないとあせった

フォームデザイナにコントロールをはりつけて、フォームのプロパティ Localizable を true にすると、そのフォームのローカル化が可能になります。 フォームでLanguageを変更して、コントロールごとにがさっとプロパティを変えて、またフォームでLanguageを…

ユーザコントロールをTextプロパティ付きで作ると問題があった

UserControlから継承した場合、TextプロパティはBrowsable=Falseになっているため、プロパティページに表示されませんので、<System.ComponentMode.Browsable(true)> を追加してやる。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=29256&forum=7 の前のほう参照。 無事プロパティペー</system.componentmode.browsable(true)>…

.Net Compact Frameworkでコントロール配置が乱れた理由

id:yellow_73:20080517#p1 のつづき。 フォームでFrom.Resizeや名称忘れたけどSIPが上がったり下りたりしたときのイベントを捕まえてコントロールの再配置を行っているのですが、再配置時に、フォームのVisibleがFalseの時には再配置を行わないようにしてい…

.Net Compact Framework でコントロール配置が乱れる

原因不明。 前にビルドしたらうまくいったのに、現在は配置がおかしくなります。 しかも、Releaseでコンパイルすると症状が出て、Debugでコンパイルすると症状が出ません。

短くしてみる

id:yellow_73:20080402#p1に対するコメントとして http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/yellow_73/20080402%23p1 で hfu さんが「大きいからなのでしょうか?」とおっしゃっていたので、もしかしてと思ってファイルサイズを極端に少なくして…

基盤地図情報のクラス生成ができない

xsd.exeにxsdを食べさせたところ、いくつかの紆余曲折がありつつも、なんとかスタブを吐いてくれたのですが、XmlSerializer::Deserializeに基盤地図情報を食べさせたら、メタデータまでは食べてくれたのですが、DataSet要素は食べてくれませんでした。はあ…。

中抜きのポリゴンを塗りつぶす

1つのリングを持つポリゴンの中を塗りつぶすのは Graphics::fillPolygon を使えばいいだけで、非常に簡単。 二重リングになっていて中抜きされているものの場合のことを考えてみると、ちょっと困った。外から前景色で塗りつぶし、背景色で塗りつぶし、と続け…

「それは仕様です」?

id:yellow_73:20080214 の記事にトラックバックを頂いたので、ひとつ。 上記のページに記述されているように、接続文字列のEncodingの値をUNICODEにするとうまくいきました。 (その前にUTF8と指定していたのですが、うまくいかなかった・・・なぜ??) htt…

NpgsqlはデフォルトではShift-JISになる

UTF-8で作ったデータベースに対して、Npgsql(ADO.NETプロバイダ)からアクセスしたところ、文字化け。 困ったにゃあということで、実行をトレースしていくと、NpgsqlConnector::Open() において Encoding = Encoding.Default; となっているところにぶつかりま…

PostgreSQLデータプロバイダ

http://pgfoundry.org/projects/npgsql/ とりあえず使ってみて、トランザクションができるのを確認しました( なぜか OleDbプロバイダじゃうまくいかなかった ) 。 でも、Provider Factory に対応していないです。

VBで構文解析をやってみる

字句解析を行う←DFAを作る←状態遷移表を書く ということですみます。 構文解析を行う←(どうすりゃいいんだ) でストップ。 yaccなりbisonはあるけど、吐き出すのはCのコード。Visual Basic に組み込むのは無理臭いと思いました。 で、結局はbisonの吐き出すコ…

国際化?

国内にさえ知られていないというのに、国際化を目指してもいいかと思いました。なんじゃそれ。 かなりやっかいなことになっていたのですが、なんとかうまくいったようなかんじになりました。しかし、何がうまくいって、何がいけなかったのか、まったく分かり…