Author Archives: admin

BOOTMGR IS COMPRESSED

XPに新OS(vista系)をインストールしたときになる。あらかじめルートの圧縮は解除しておいたほうがいいようだ。

直し方
vista系のDVDから起動。画面で止まったらSHIFT+F10でコマンドプロンプトに移行、

方法1

方法2

KB951847 失敗

Microsoft .NET Framework Repair Toolをダウンロードして実行、以下の状態で止めて、再度インストールを試みる。

51142b9e-7774-4404-bf40-ca06d26a87c4

これでもだめなら
ここからdotnetfx_cleanup_tool.zipをダウンロードして.NET Frameworkを全削除、再起動後に試みる

これでもだめならイベントビューアをクリアしてからエラーを調べる

イベントビューア

Windowsを上書きインストールしていたりするとC:\Program Files\Reference Assembliesのアクセス権がないためエラーになることがある。この場合はこのフォルダの所有者を変えてUserがアクセスできるようにする。

C#でLocation.Xが設定できない

VS2008でフォームプロジェクトをつくり、フォームにボタンを設置しハンドラを以下のように書くとエラーになる。

再現するために簡単なコンソールプログラムを作る。

Form.LocationはSystem.Drawing.Pointでこれはstructであり、value typeだ。
value typeということはボックス化が問題のように感じるがおそらくこれはそうではない。
value typeとはC言語で言うところのstructであって=で値を設定すれば全フィールドコピーされ、関数で渡しても関数から返してもコピーされるような型のことだ。

上記コードのプロパティpt.getはあくまで関数であり返すのはコピーである。ボックス化されたものではない。よってこのコピーの値を変更することは意味を成さない。プロパティにしなければエラーにはならない。

最初のコードは以下のように書くのが正解

Form.Locationはウインドウの位置だからX,Yを別々に設定するのはよくない。しかしエラーの表示は「変数でないため」というのも変な感じだ。これはFormの設計がおかしいのだろうか。

Form.Locationはsetされたときウインドウの位置を変えないとならないのでプロパティでやるしかない。Pointをいじれないとするとしょうがないのか

ちなみにC++/CLIだとエラーにならないが、あたいは設定されないので最初なやむ。

ウインドウが行方不明になったときキーボードで復元する方法

タスクバーには表示されていることが前提。

1、まずタスクバーで問題のウインドウをクリックしてアクティブにする。

2、[Alt]+[Space]を押す。(Altを押しながらSpaceを押す)

3、[M]を押す。

4、この状態でカーソルキー(矢印キー)でウインドウを動かせるようになっているのでいろいろ動かして画面上に持ってくる。

C++ 改行文字のあるstringをgetline()で区切る

wheezyに本物のfirefoxをインストールする

debianではfirefoxはリポジトリにはなく、オリジナルビルドのiceweaselを使っているがこれだとプロファイルマネージャが動かなかったので本家からfirefoxをダウンロードして生インストールする。

最初にiceweaselを削除
# apt-get remove iceweasel

本家からlinux版firefoxをダウンロードする。ここではfirefox-26.0.tar.bz2をダウンロードした。

$ tar xf firefox-26.0.tar.bz2

これはソースではなく実効ファイルがそのまま入ってたからビルドする必要なかった。

/opt/fireにコピーしてシンボリックリンクをはった
# cd /usr/bin
# ln -s /opt/firefox/firefox firefox

設定ファイルを全消去してプロファイルマネージャを起動
$ cd
$ rm -rfv .mozilla/
$ firefox -ProfileManager

firefox profilemanager

flashはadobe本家からlibflashplayer.soをダウンロードして .mozilla/plugins/の中に入れるかシンボリックリンクをはる。

linuxでシステムのバージョンを見る

どれかでみる。カーネルのバージョンとディストリのバージョンがある。

/proc/versionはカーネルから直接持ってくる。ここの文字列はカーネルをビルドしたときに埋め込まれるものだと思う。

unameは/proc/versionを見ていると思う。
lsb_releaseはpythonで/usr/lib/python2.7/dist-packages/lsb_release.pyに書かれている。その他のはただのファイルでこれらはディトリビュータが書いたものと思われる。