情報科学屋さんを目指す人のメモ(FC2ブログ版)

何かのやり方や、問題の解決方法をどんどんメモするブログ。そんな大学院生の活動「キャッシュ」に誰かがヒットしてくれることを祈って。

ブログ内検索

スポンサーサイト このエントリーを含むはてなブックマーク

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告 | 編集

見やすくしたPuTTYの配色設定ファイルの中身を公開 このエントリーを含むはてなブックマーク

PuTTYのデフォルト配色は見にくすぎる

puttyの黒字に青い文字が絶望的に見にくいということは、「PuTTYの配色を見やすくした」で紹介しました。そして、おすすめの見やすい配色もRGBで公開したのですが、正直言って設定するのは大変です。そこで今回、簡単に設定できるように、その配色にした設定ファイルを公開し、簡単に導入できるようにしました

見やすくしたときの表示結果

変更後の見た目は「PuTTYのおすすめ配色デモ」に掲載してあります。

配色のRGB値(設定内容詳細)

また、RGB値は「PuTTYの配色を見やすくした」に掲載してあります。

スポンサーサイト
Linux | コメント:0 | トラックバック:1 | 編集

XML形式の設定ファイルを利用する このエントリーを含むはてなブックマーク

背景

プログラムの入力ファイル(設定ファイルなど)をXML形式にしたいとする。

XMLの形式を作成する

入力ファイル(設定ファイル)が非常に簡単な形式なら、今回のような工夫は必要ありません。しかし、本当に簡単な形式であったとすれば、そもそもXML形式である必要すらありません。そこで、今回は、とある項目があったりなかったり大規模であったり論理的な制約があるなど、XMLにするだけ複雑だとします。

そんなとき、まずはその複雑なXMLファイルの定義を作成する必要があります。今回は、その定義をXML Schemaという形式で作成します。作成したファイルの拡張子は.xsdです。.xsdファイルの書き方についてはいつか記事に出来ればと思っています。かなりとっかかりがつかみにくいので

XML Schema(.xsd)ファイルからC#のクラスファイルを作成する

.xsdファイルから.csファイルを作成します。この作成には、Visual Studioに含まれるXMLスキーマ定義ツール(xsd.exe)を利用します。Visual Studio 2008で確認すると、xsd.exeは「C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\xsd.exe」にあります。

そして、XMLSchema.xsdは、次のようにしてC#のクラスファイルに変換可能です。

>xsd.exe /l:cs /c XMLSchema.xsd

XMLSchema.xsdで定義されたXML Schemaに従って作成されたファイルは、生成されたC#のクラスにデシリアライズ可能です。しかし、XML Schemaを完全に反映したクラスファイルになっていない点に注意してください。たとえば、maxOccursなどは反映されないので、生成されたクラスを必ずしもXML Schemaに従ったXMLファイルにシリアライズ可能というわけではないみたいです。

また、生成するクラスの名前空間を指定したい場合は、指定したい名前空間が「MyNameSpace」のときは、次のようにすればOKです。

>xsd.exe /l:cs /c XMLSchema.xsd /n:MyNameSpace

シリアライズ・デシリアライズ

ここまで来れば、あとはシリアライズだろうがデシリアライズだろうが自由にやってあげてください。これについては、以下のmsdnが参考になります。

.NET | コメント:0 | トラックバック:0 | 編集

firefoxでの自分のクラッシュレポートを見る方法 このエントリーを含むはてなブックマーク

事の発端

Firefox高速化テクニック8というマイコミジャーナルさんの記事を参考に設定を書き換え、再起動したら、起動しなくなってしまいました。pref.js(マイコミジャーナルのページではpref.jp)のバックアップをとっていなかったので非常に焦る。そして、変更箇所と思われる部分を元に戻しても変化なし。

変更した設定

変更したのは、

content.notify.backoffcount追加
nglayout.initialpaint.delay追加
の2つ。

問題発生

変更後、再起動してみると、あら不思議。設定を変更したせいなのか何なのか、なぜか

Mozilla クラッシュレポータ

ご迷惑をおかけして申し訳ありません

Firefoxの動作に問題が発生し、不正終了してしまいました。再起動時には以前表示していたタブやウィンドウを可能な限り復元します。(以下略)

がすぐに表示されて、一切起動しなくなってしまいました。

試行錯誤

試行錯誤してみても効果なし。以下、今度使えるかもしれないヒントを掲載。

  • firefox.exeの場所
    "C:\Program Files\Mozilla Firefox"
  • about:configの設定の保存場所
    "C:\Users\(ユーザ名)\AppData\Roaming\Mozilla\Firefox\Profiles\xxxxxxxx.default\pref.js"
  • 設定ファイルを指定しているiniファイルの場所
    "C:\Users\(ユーザ名)\AppData\Roaming\Mozilla\Firefox\profiles.ini"
  • クラッシュレポートに関するディレクトリ
    "C:\Users\(ユーザ名)\AppData\Roaming\Mozilla\Firefox\Crash Reports"

クラッシュレポート送信

何度やってもだめで、なんどもクラッシュレポート送信画面に遭遇していたのですが、なんとなく送信をしてみました。「問題を解決できるようにMozillaにレポートを送信する」にチェックを入れるだけです。

すると、なんとなくクラッシュレポートフォルダを見つけていたので、気になって中をのぞいてみることに、すると、「C:\Users\(ユーザ名)\AppData\Roaming\Mozilla\Firefox\Crash Reports\submitted」フォルダに、bpで始まるテキストファイルが。

中をのぞいてみると、なんと、ファイル名そのままがクラッシュ IDとして保存されているだけ。

クラッシュIDとは何なのか

クラッシュIDのことなど忘れた頃に、Firefox crashes when you open itという、ページを発見。そこの下の方を見ると、

http://crash-stats.mozilla.com/report/index/<your crash ID here>
だそうな。つまり、your crash ID hereのところにbp以降の番号(277ca492-ef87-40ea-b667-051b437f2b78みたいなの)を入力すればクラッシュレポートが閲覧できるそうなのです。

クラッシュレポートを読んでみる

実際にやってみると、クラッシュ時の詳細な情報が。たとえば、コールスタックのリンクをクリックすれば、ソースコードに飛べたりします。

コールスタックは、残念ながらぴんとこなかったのですが、

Crash Reason EXCEPTION_ACCESS_VIOLATION
と、書かれていたので、ファイルを書き換えるときに、ファイルがロックされたままになったりしているのかと思ってPCを再起動してみることに。

解決

すると、あっけなく起動しました。あの苦労は何だったのか。

しかし、自分のクラッシュレポートを見ることができるということが分かってよかったです。

ソフトウェア | コメント:0 | トラックバック:0 | 編集
 | HOME | 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。