PC」カテゴリーアーカイブ

Windows7 32bitでエラーコード9C59が出てIE11が入れられない問題

はじめに

Windows7 32bitを使用していましたが、色々ととち狂ってライセンスをEnterprise版を導入していたせいでWindows10への無料アップグレード期間を逃してしまいました。

そのまま今後の課題として2年ぐらい放置していましたが、どうやらレジストリを弄ってアップグレードインストールさえすればデータはそのままでエディション変更できると知り、今さらながらEnterprise版からUltimate版に変更しました。
(もちろん別途Windows7のUltimate版の正規ライセンスは入手しています)

そのため特に何も考えずSP1適用済みDVDからアップグレードインストールしたところ、プログラムは確かにあらかた無事でしたが、ファイアウォール設定がリセットされていたり、ATOKが消滅してたり、IE11がIE8になっていたりと、そこそこ不都合が発生しました。

「IE8はIE11を入れ直せばいいだけだろ」、と思って気楽にWindowsUpdateをしましたが
エラーコード 9C59 Windows Update で不明なエラーが発生しました。
と表示されて一向にIE11にできません。

エラーコードで検索すると情報がないわけではなく、情報がありすぎて今回の問題に合致しない対策法ばかり引っ掛かるという有様でした。

結論

色々と悪戦苦闘をした結果から書くと

  1. SP1が当たった状態でIE8になっている
  2. この状態で特定のWindows更新パッチが当たっていると更新に失敗する

この条件を満たした場合の解決策は「古いパッチを消してからIE11を入れる」しか対応策がないようです。ディスクのクリーンナップとか時間の無駄です。

対応策

急がば回るしかないのかと諦めて以下のように対応しましょう。

  1. 更新パッチを削除

実際、どれが原因なのか考えるのも検証するのも面倒なので初期状態までスカッと消しました。実施にあたっては以下のようなバッチファイルを作成しました。
削除完了まで1時間ぐらいかかったような気がします。
なお実行前の注意としてWindowsUpdateは自動ではなく手動にしておかないと、苦労して消しても再起動する度にゾンビのように復活してしまいます。

@echo on
wusa.exe /uninstall /kb:4025341 /quiet /norestart
wusa.exe /uninstall /kb:4014504 /quiet /norestart
wusa.exe /uninstall /kb:3170455 /quiet /norestart
wusa.exe /uninstall /kb:3161958 /quiet /norestart
wusa.exe /uninstall /kb:3161949 /quiet /norestart
wusa.exe /uninstall /kb:3159398 /quiet /norestart
wusa.exe /uninstall /kb:3156019 /quiet /norestart
wusa.exe /uninstall /kb:3156016 /quiet /norestart
wusa.exe /uninstall /kb:3155178 /quiet /norestart
wusa.exe /uninstall /kb:3150220 /quiet /norestart
wusa.exe /uninstall /kb:3139914 /quiet /norestart
wusa.exe /uninstall /kb:3139398 /quiet /norestart
wusa.exe /uninstall /kb:3138910 /quiet /norestart
wusa.exe /uninstall /kb:3138612 /quiet /norestart
wusa.exe /uninstall /kb:3127220 /quiet /norestart
wusa.exe /uninstall /kb:3126587 /quiet /norestart
wusa.exe /uninstall /kb:3124275 /quiet /norestart
wusa.exe /uninstall /kb:3122648 /quiet /norestart
wusa.exe /uninstall /kb:3115858 /quiet /norestart
wusa.exe /uninstall /kb:3110329 /quiet /norestart
wusa.exe /uninstall /kb:3109560 /quiet /norestart
wusa.exe /uninstall /kb:3109103 /quiet /norestart
wusa.exe /uninstall /kb:3108664 /quiet /norestart
wusa.exe /uninstall /kb:3108381 /quiet /norestart
wusa.exe /uninstall /kb:3108371 /quiet /norestart
wusa.exe /uninstall /kb:3101722 /quiet /norestart
wusa.exe /uninstall /kb:3097989 /quiet /norestart
wusa.exe /uninstall /kb:3093513 /quiet /norestart
wusa.exe /uninstall /kb:3086255 /quiet /norestart
wusa.exe /uninstall /kb:3084135 /quiet /norestart
wusa.exe /uninstall /kb:3078601 /quiet /norestart
wusa.exe /uninstall /kb:3076895 /quiet /norestart
wusa.exe /uninstall /kb:3075220 /quiet /norestart
wusa.exe /uninstall /kb:3074543 /quiet /norestart
wusa.exe /uninstall /kb:3072305 /quiet /norestart
wusa.exe /uninstall /kb:3071756 /quiet /norestart
wusa.exe /uninstall /kb:3067904 /quiet /norestart
wusa.exe /uninstall /kb:3067903 /quiet /norestart
wusa.exe /uninstall /kb:3061518 /quiet /norestart
wusa.exe /uninstall /kb:3060716 /quiet /norestart
wusa.exe /uninstall /kb:3059317 /quiet /norestart
wusa.exe /uninstall /kb:3055642 /quiet /norestart
wusa.exe /uninstall /kb:3046269 /quiet /norestart
wusa.exe /uninstall /kb:3046017 /quiet /norestart
wusa.exe /uninstall /kb:3045685 /quiet /norestart
wusa.exe /uninstall /kb:3037574 /quiet /norestart
wusa.exe /uninstall /kb:3035126 /quiet /norestart
wusa.exe /uninstall /kb:3030377 /quiet /norestart
wusa.exe /uninstall /kb:3023215 /quiet /norestart
wusa.exe /uninstall /kb:3022777 /quiet /norestart
wusa.exe /uninstall /kb:3021674 /quiet /norestart
wusa.exe /uninstall /kb:3010393 /quiet /norestart
wusa.exe /uninstall /kb:3019978 /quiet /norestart
wusa.exe /uninstall /kb:3011780 /quiet /norestart
wusa.exe /uninstall /kb:3010788 /quiet /norestart
wusa.exe /uninstall /kb:3004375 /quiet /norestart
wusa.exe /uninstall /kb:3004361 /quiet /norestart
wusa.exe /uninstall /kb:3003743 /quiet /norestart
wusa.exe /uninstall /kb:2992611 /quiet /norestart
wusa.exe /uninstall /kb:2991963 /quiet /norestart
wusa.exe /uninstall /kb:2984972 /quiet /norestart
wusa.exe /uninstall /kb:2978742 /quiet /norestart
wusa.exe /uninstall /kb:2978120 /quiet /norestart
wusa.exe /uninstall /kb:2977292 /quiet /norestart
wusa.exe /uninstall /kb:2973351 /quiet /norestart
wusa.exe /uninstall /kb:2973201 /quiet /norestart
wusa.exe /uninstall /kb:2973112 /quiet /norestart
wusa.exe /uninstall /kb:2972211 /quiet /norestart
wusa.exe /uninstall /kb:2972100 /quiet /norestart
wusa.exe /uninstall /kb:2968294 /quiet /norestart
wusa.exe /uninstall /kb:2943357 /quiet /norestart
wusa.exe /uninstall /kb:2937610 /quiet /norestart
wusa.exe /uninstall /kb:2931356 /quiet /norestart
wusa.exe /uninstall /kb:2929733 /quiet /norestart
wusa.exe /uninstall /kb:2911501 /quiet /norestart
wusa.exe /uninstall /kb:2894844 /quiet /norestart
wusa.exe /uninstall /kb:2893294 /quiet /norestart
wusa.exe /uninstall /kb:2892074 /quiet /norestart
wusa.exe /uninstall /kb:2884256 /quiet /norestart
wusa.exe /uninstall /kb:2882822 /quiet /norestart
wusa.exe /uninstall /kb:2871997 /quiet /norestart
wusa.exe /uninstall /kb:2868116 /quiet /norestart
wusa.exe /uninstall /kb:2868038 /quiet /norestart
wusa.exe /uninstall /kb:2864202 /quiet /norestart
wusa.exe /uninstall /kb:2862335 /quiet /norestart
wusa.exe /uninstall /kb:2862330 /quiet /norestart
wusa.exe /uninstall /kb:2862152 /quiet /norestart
wusa.exe /uninstall /kb:2861698 /quiet /norestart
wusa.exe /uninstall /kb:2847927 /quiet /norestart
wusa.exe /uninstall /kb:2840631 /quiet /norestart
wusa.exe /uninstall /kb:2834140 /quiet /norestart
wusa.exe /uninstall /kb:2813430 /quiet /norestart
wusa.exe /uninstall /kb:2807986 /quiet /norestart
wusa.exe /uninstall /kb:2786081 /quiet /norestart
wusa.exe /uninstall /kb:2770660 /quiet /norestart
wusa.exe /uninstall /kb:2758857 /quiet /norestart
wusa.exe /uninstall /kb:2742599 /quiet /norestart
wusa.exe /uninstall /kb:2736422 /quiet /norestart
wusa.exe /uninstall /kb:2729094 /quiet /norestart
wusa.exe /uninstall /kb:2727528 /quiet /norestart
wusa.exe /uninstall /kb:2705219 /quiet /norestart
wusa.exe /uninstall /kb:2698365 /quiet /norestart
wusa.exe /uninstall /kb:2690533 /quiet /norestart
wusa.exe /uninstall /kb:2667402 /quiet /norestart
wusa.exe /uninstall /kb:2654428 /quiet /norestart
wusa.exe /uninstall /kb:2639308 /quiet /norestart
pause

なお新しいのから消すのが基本かと思ったので大きい番号から並べていますが効果は不明です。

  1. 再起動

大事。

  1. IE11必須コンポーネントをインストール

Internet Explorer 11 用必須更新プログラム にある9個の更新プログラムをインストールする。
個別に再起動せずKB順に当てて最後に再起動すれば良い。

  1. 再起動

なんか10分ぐらい待たされる。

  1. IE11を単体インストール

以下から自分の環境に応じたIE11をダウンロードしてインストールする。

Windows 7 SP1 32 ビット
Windows 7 SP1 64 ビット
Windows Server 2008 R2 SP1 64 ビット

インストールが始まったら勝ったも同然

  1. 再起動

私の環境だと再起動すると1.5時間ぐらい処理中になりました。

  1. システム更新準備ツール (KB947821)を当てる

Windows 7 用のシステム更新準備ツール (KB947821) [2014 年 10 月] をダウンロードしてインストールする
これを当てないとWindowsUpdateが延々と処理中のまま進まなくなります。
事前に当てておいても無駄になるので、必ずIEを当ててから処理するようにします。

  1. 再起動

20分ぐらい待たされたような

  1. ひたすらWindowsUpdateする

多大な時間がかかります。
時間の無駄なので寝る前にするようにしましょう。

 

あとは2020年まで粘ってから観念してWindows10にアップグレードするだけです。

 

参考サイト

http://siwon-g.hateblo.jp/entry/20150703/1435926555

http://www.smilebanana.com/archives/2016/01/12-2109.shtml

 

ExpressWebからWinserverに引っ越しました[非推奨案件]

ExpressWebが廃止されるということで契約が切れる3月末で追い出されることになりました。
なのでギリギリまで粘ってWinserverに引っ越しました。
Winserverにした理由は以下の通り。

  1. ASP.NET+MySQL+SQLServer使用可
  2. 当たり前だよね。

  3. 安い
  4. たかだか個人のホムペだし・・。なのでAzureは論外ですわ。

  5. 運用実績
  6. ExpressWebみたいに勝手に値下げして短期間で勝手に撤退する自爆テロをやられると迷惑なので

  7. WindowsServer2012
  8. Win2008Srvベースよりは長くサポートされるので

とにかく年齢を経ると面倒なことは極力したくなるわけですよ。
ただでさえ面倒くさがりなのに金にならないことで面倒は御免なのです。
ということで横移動で安く済み、それなりに運用実績があるところを選んだわけです。
それでも年払いで月々1000円近い金額はそこそこ抵抗があったので、安価なLinux VPSにしてみることも考えましたが、データ移行に苦戦している内に終戦になる恐れがあったので検討除外しました。
ひょっとして思いの外、簡単に移行できたかも知れませんが、元々ASP.NETが好きで選んだことなので心中することにしました。

とまあこうして移転してきたわけですが、私は契約時期として難民化が早い方でしたので、これから私のようなExpressweb難民が続々と出てくることでしょう。
ということで以下に私がたどってきた苦難の道をを紹介します。

1.Expresswebのデータをエクスポート

  • 準備
  • ExpressWebのコントロールパネルにログインする。

  • ファイルの取得
  • [ファイルマネージャ]から”wwwroot”を選択して[Zip形式]ボタンをクリック⇒出力ファイル名(wwwroot.zipみたいなの)を入力する。
    そうするとZIPアーカイブが作成されるのでクリックしてダウンロード。

    ファイルマネージャ

    ExpresWebコントロールパネルのファイルマネージャ

  • DBデータの取得(Blogデータ)
  • [データベース]から”MySQL5.1″をクリック⇒[データベースを参照]をクリックしてphpMyAdminを開く。
    phpMyAdmin-[エクスポート]タブをクリック⇒blogのDB名を選択して[実行する]をクリックするとDBデータのダウンロードが始まる。

    phpMyAdminのエクスポート機能

    phpMyAdminのエクスポート機能


    デフォルト設定に対して「作成するクエリの最大長」だけ増やしましたが、半端にインポートしても意味がないので「エクスポートをトランザクションで囲む」にチェックしても良いかも。

  • DBデータの取得(SQLServer)
  • この作業はSQLServerにDBを作成した人のみがやればいいです。
    [データベース]から”SQL Server 2008″をクリック⇒データベース名をクリックして”SQL データベースプロパティ”を開く。
    [メンテナンスツール]⇒[バックアップ]をクリック⇒ファイル名を指定して”ZIP形式バックアップ”にして[バックアップ]をクリックするとDBデータのダウンロードが始まる。

    ExpressWebのコントロールパネル(SQLServer)

    ExpressWebのコントロールパネル(SQLServer)

2.データをインポート(MySQL)

  • sqlファイルを開いてCREATE DATABASEから始まるクエリを削除
  • sqlファイルの”expressweb.jp”を新サイトほホスト名に置換
  • sqlをZIPに固める
  • WinserverのphpMyAdminにログインしてインポートタブをクリック
  • ブログデータをインポートする
  • phpMyAdminのインポート画面

    phpMyAdminのインポート画面


    ちなみにphpMyAdminへのアップロード制限は2MBだって・・・。かなりここヤバい気がしてきた。

3.データをインポート(SQLServer)

  • SQLServer Management Studio 2012 Express の導入。
  • WinserverのSQLServerはクライアントPCから直接SQLServer認証で接続する必要があるため、下記からSSMSEをダウンロードしてインストールする。
    https://www.microsoft.com/ja-JP/download/details.aspx?id=50003

  • SQLServerのデータベースリストア
  • 通常は以下のメニューからbakファイルを選べばスイスイ行くはずが、何故かローカルファイルが選択できない。

    リストア

    SQLServer Management Studio 2012によるリストア


    どうやらWinserver側でローカルからのリストアが制限されている様子。
    というかSQL打つしかできない。
    やっぱり、ここヤバかった・・・。
    だって自分のデータを持ち込むのに金を取るんだってさ↓。しかも5400円という高額。
    SQLServer 移転 [Winserver]
    ちょっとこれマジでありえねえだろ・・・。
    FAQにも一切書いてないから事前に調べようがないじゃん。酷いよ。
    と呪詛を吐いても詮無きことなので回避策を講じました。

  • [回避策]
    • bakファイルをローカルリストア
    • Expresswebから取得したbakファイルをローカルリストアするためにSQLServerを導入します。
      ただ一時作業のために余分なリソースを常駐させたくないので、常時インスタンス起動せずオンディマンドらしいSQL Server 2012 Express LocalDBを使うことにしました。
      マシン環境が潤沢な人は通常版SQLServerを使えば良いだけなので読み飛ばして良いです。
      インストールしたらSSMSEからbakファイルをリストアします。SSMSEの使い方は下記サイトを参考にしました。
      http://sqlazure.jp/r/sql-server/233/
      参照先のおかげで助かりました。ありがとうございます。だってアクセス指定子が「(localdb)\LocalDB Instance」なんて分からんって!

    • DBをスクリプトファイル化
    • データベースを右クリックして[タスク]→[スクリプトの生成]を選択してDBデータをファイル化する

      DBのスクリプトファイル化

      SQLServer Management Studio 2012によるDBスクリプトファイル化

    • SSMSE上でスクリプト実行
    • SSMSEの接続先をWinserverにしてから出力したスクリプトファイルを流します。
      これでやっと完了・・・。
      逆にWinserverから引っ越す場合は、やはりSSMSEにてDBをスクリプトファイル化する流れで行けるかと思います。

4.ファイルの復元

  • FTPによるファイルアップロード
  • バックアップしたファイルを解凍してFTPで”web”ディレクトリ配下に展開すれば完了です。
    時間がかかるので始まったら放置して別作業をするのが吉。
    ちなみにMySQLのDB名などを変えたらWordpress側のwp-config.phpもいじらないと駄目ですよ。

で、WinServerの使い勝手ですがExpresswebの3倍の価格ながら残念ながらパフォーマンスも3倍とは行かないようです。
あとやたら手作り感が半端ないです。SQLServerを使いたい場合はメールに必要事項を書いて送ってくれってノリです。
しかも前述したようにDBのリストアみたいな簡単な作業すらユーザー側には開放されておらず、金くれれば代行するぞとか平気で書いてある有様。
調べたら10人ぐらいしかいない会社みたいなので、まあむべなるかなって感じなのですが、正直Expresswebから比べるとかなり落ちると言わざるを得ません。
1年払いしてしまったので仕方なく使いますが、正直オススメはしません。

ABLENETのVPSを利用したDELEGATEプロキシサーバーの作成

格安VPSであるABLENETにてDELEGATEによるHTTPプロキシ/FTPプロキシサーバーを構築してみたので、その備忘録代わりに載せておきます。

プラン:KVM 512M
OS:CentOS 6.6

こういうのを検索する人には分かりきったことかと思いますので、VPSとはなにかとかABLENETがなにかとかは省略します。
それとvimの使い方も書きませんので適宜脳内補完して下さい。

ということで以下にHTTPポート:8080 , FTPポート:21 , SSHポート:2200での設定例を記載します。
なおHTTPは使い勝手確保のためにプロキシ特有の環境変数を出力しないような設定としており、
診断くんによるプロキシ判定で”総合評価:?(A 以上 or 生 IP)”と診断される設定です。
いわゆる匿名串というやつです。
FTPについてはNextFTPにてPASV接続を確認しております。
一度、設定してしまえば極めて安定しているので放置運用となるかと思います。
そのため踏み台にされないようにセキュリティには充分に配慮してください。

###ABLENETのコントロールパネルのコンソールから操作

###ツ黴€ホスト名の設定
$ツ黴€vi /etc/sysconfig/network
適宜変更 ex)h000-00-00-00

### hostsの設定
$ vi /etc/hosts
127.0.0.1ツ黴€ツ黴€ツ黴€ツ黴€ツ黴€ツ黴€ localhost localhost.localdomain
000.00.00.00ツ黴€ツ黴€h000-00-00-00 h000-00-00-00.vps.ablenet.jp

### ネットワーク設定
$ vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=none
IPADDR=グローバルIPアドレス
NETMASK=255.255.255.0
GATEWAY= 指定のアドレス
DNS1=指定のアドレス1
DNS2=指定のアドレス2

$ service network restart
→(もしくは/etc/init.d/network restart)

###SSHのポート変更
$ vi /etc/ssh/sshd_config
Port 2200
$ service sshd restart

### ここから先はSSH経由でターミナルが使える

###ファイアウォール設定
$ vi /etc/sysconfig/iptables
===========(ここから)
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 20 -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 21 -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 22 -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dportツ黴€2200 -j ACCEPT
-A INPUT -p tcp -m state –state NEW -m tcp –dport 8080 -j ACCEPT
COMMIT
===========(ここまで)

### PassiveFTP許可
$ modprobe ip_conntrack_ftp
$ cp -p /etc/sysconfig/iptables-config iptables-config.bak
$ vi /etc/sysconfig/iptables-config
IPTABLES_MODULES=”ip_conntrack_ftp”

###ネットワーク再起動
$ service iptables restart

###ファイアウォール起動状態確認
$ chkconfig network on
$ chkconfig –list iptables
→(3:OnになってればOK)

###パッケージ更新
$ yum install wget
$ yum install make
$ yum install gcc-c++
$ yum install libstdc++
$ yum install libstdc++-devel
$ yum install openssl-devel
$ yum update

###一度再起動
$ reboot

### DELEGATE導入準備
$ cd /usr/local/src
$ wget ftp://delegate.hpcc.jp/pub/DeleGate/delegate9.9.13.tar.gz
$ tar zxvf delegate9.9.13.tar.gz
$ cd delegate9.9.13/src
$ PATH=$PATH:/usr/bin/gcc
$ export PATH

###DELEGATEインストール
$ make PATH=”.:$PATH” CC=gcc
→途中メールアドレスの入力を求められるので入力
→間違えても一端Enter押下して[n]を選べば再入力できる
$ cp delegated /usr/sbin

###DELEGATEバイナリに署名をする
$ /usr/sbin/delegated -Fesign -w

###DELEGATEログ設定
$ mkdir -p /var/delegate/log
$ chown -R nobody:nobody /var/delegate/log
$ mkdir /var/delegate/cache
$ chown -R nobody:nobody /var/delegate/cache
$ ln -s /var/delegate/log /var/log/delegate
$ mkdir /etc/delegate

$ vi /etc/passwd
delegate:*:10001:10001:delegate daemon:/var/delegate:

$ vi /etc/group
delegate:*:10001:

$ chown -R nobody:nobody /var/delegate

###DELEGATE HTTP設定
→BASIC認証のユーザー名:パスワードは各自で事前に決めておくこと
→PERMITは私のISPのトップレベルドメインを指定したが各自の好みで変更して下さい

$ vi /etc/delegate/delehttp.conf
===========(ここから)
SERVER=http
RESOLV=cache,file:/etc/hosts,dns,sys,nis
LOGFILE=”/var/delegate/log/delehttp_[date+%m-%d].log”
CACHE=do
CACHEDIR=”/var/delegate/cache”
CONNECT=c,d:*:*
PERMIT=”*:*:*.net,*.jp”
HTTPCONF=’kill-head:Via,HTTP-VIA,DeleGate-Ver’
HTTPCONF=’add-qhead:CONNECTION:keep-alive’
AUTHORIZER=-list{ユーザー名:パスワード}
CRON=’0 3 * * * -expire 2′
===========(ここまで)

###DELEGATE FTP設定
→BASIC認証のユーザー名/パスワードは各自で事前に決めておくこと
→PERMITは私のISPのトップレベルドメインを指定したが各自の好みで変更して下さい

vi /etc/delegate/deleftp.conf
===========(ここから)
SERVER=ftp
STLS=-fcl
RELAY=proxy
LOGFILE=”/var/delegate/log/deleftp_[date+%m-%d].log”
PROTOLOG=”
PERMIT=”*:*:*.net,*.jp”
AUTHORIZER=-list{ユーザー名:パスワード}
===========(ここまで)

###DELEGATE起動
$ delegated -P8080 +=/etc/delegate/delehttp.conf
$ delegated -P21 +=/etc/delegate/deleftp.conf

###DELEGATE終了
$ delegated -P8080 -Fkill
$ delegated -P21 -Fkill

ちなみにDELEGATEの自動起動は必要を感じてないので設定してません。
リブートしたら手動でDELEGATE起動して下さい。

ASROCKのUEFI BIOS更新後に5回ビープ音が鳴り起動しない問題

先週の火曜にエアコンが水漏れして直下に置いていたPCが全損してしまった。

よく火事にならなかったものだとホッとしているが、とにかくその復旧で大わらわだった。

丸っと壊れたらRAID組んだ意味なんかないからね・・・。

あまりにも迂闊だったことに自己嫌悪しつつ、復旧ついでにメイン機(ASROCK H67M)のファームウェアを更新したのだが、更新直後にビープ音が5回鳴って起動しない。

“AMI BIOS ビープ音”かなんかで検索したところ「CPU不良」とか出てきたので安いCeleronを買って差し替えてみたが、症状は変わらない。

なんかCPU不良って結論が嘘くさいなと思って英語で”ASROCK 5Beeps” かなんかで検索したところグラフィックボードがないことで発生する警告らしいと分かった。

http://www.asrock.com/support/faq.asp?id=286

 

ゲームをやらないので外付けグラフィックボードの類を所有しておらず、無駄なことにお金を使いたくなかったが、仕方なく買ってきたところやっと起動した。

さらりと書いたけど、ここに行き着くまでに結構な手間暇を使ってる。

買ったのはASUSTeKのNVIDIA GT630-SL-1GD3-Lとかいうファンレスのボード。

良いか悪いかよく分からないけど安くて人気があってファンレスだったのでそれにした。

まあそれは良いとして・・・UEFIメニューに入った後に、iGPU(CPU内蔵のGPU)を先に起動するようにすれば完了だな、と思ったら”Primary Graphics Adapter”に”OnBoard”という項目が存在しない。

外付GPU専用になってしまったようだ。

ASROCKってメーカーはこんなこともテストしないでリリースするのか・・・・。

もうASROCKは二度と買わない・・・。

一切、信用できない。

Thinkpad保守用ディスケットのUSB汎用化(失敗)

最後の7段配列キーボードということで大事に使っていたThinkpad T520にうっかりヤキトリのタレをどぼどぼとこぼしてしまったら、

起動しなくなるというステキな現象に陥ってしまったので、とりあえずシステムボードを注文してみた。

CTOなので保守マニュアルを見ても対象システムボードが特定できないので、以下のサイトでマシンタイプを選択したらハイフン抜いたS/Nを入力すると対象
FRUが特定できる。

http://support.lenovo.com/jp/ja/ibasepartslookup/selectproduct?c=1&returnUrl=%2fja%2fibasepartslookup」

これで換装用システムボードが特定できたのだが、問題はマシンタイプとかシリアルとか、このあたりを正しく変更する必要があるのだが、そのために表題
のThinkpad保守用ディスケット(Thinkpad Maintenance Diskette 以下TMD)というソフトで読み取り/設定が可能になる。

ちなみに昔はCE用に限定された非公開のソフトウェアだったらしいが、今では普通にUSで公開しているようだ。

http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/i7tm34us.exe

これで現時点で最新の1.86が入手できる。

しかし、このソフトいくつか問題があって・・・

1.USBに書き込んでもFAT12にされる

2.DOSアプリとして自由に起動できない

つまりいくら容量があっても40MBに制限されてTMD専用の使い勝手の悪いメモリーキーにされてしまうということ。

そんでFAT32で起動ディスク化したUSBメモリーキーに、色々と試行錯誤して汎用性の高いものを作ろうと悪戦苦闘

起動するカラクリが分からなくて、どういうことかと悩んだところTMDのCOMMAND.COM(PC-DOS)ではアプリの起動パラメータがハードコードされていた。

ここまで分かったところで早速作業開始。

(1).TMDから保守用ディスケットを作成し、作成されたディスケット中のファイルを全て保管しておく

(2).HP USB Disk Storage Format ToolでFAT32でUSBブートを作成(MSDOS)

(2).保管しておいたTMDのファイルのCOMMAND.COMをBIOSUTIL.EXEにリネーム

(3)IBMBIO.COM、IBMDOS.COM、CONFIG.SYS以外のファイルを(2)のUSBブートに格納

(4).適当にCONFIG.SYSを記述(device=flshbios.sys があればいい)。

これでUSBメモリーキーからブートしてBIOSUTIL.EXEを叩けば上手く行くはずだったが、”WARNING :EEPROM IS WRITE PROTECTED”とか表示されて書き換え
が出来ない

ちょっと、これ以上はよく分からんなぁ

もしかしてTMDのブートセクターあたりにパスワードが記述してあるとか??

もうダメポ

ということで、今回の企みは失敗であった。

ExpresswebでASP.NET構成を動かす

Expresswebを借りたは良いけど、よく考えたら特にやりたい動的コンテンツもなかったので、 あまり深く追求してこなかった私ですが、今回少し踏み込んでDB設定をしてみました。
それにしてもExpresswebに用意されたマニュアルの不親切なこと。
パスワードポリシーとかの存在を全く書いてないよ。

まあ安かろう不親切だろうってことなんですかね。

  • はじめに

ASP.NET構成の設定値は初期状態のままだとApp_Dataの下にAspnetdb.mdfに保存される。
正直Expresswebで動かせるかどうかよく分からなかったのと、せっかく3インスタンスほどDB空間が提供されてるから、やはりそれを使ってみたい。
と、そんな程度の理由でDBを載せ替えてみることにした。
ということで備忘録代わりに記事にしてみた。

(1).ASP.NET構成のDB空間を作成する
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regsql.exe
「アプリケーション サービスのために SQL Server を構成する」を選択して
DB名はデフォルトのaspnetdb以外にすること

(2).DB接続ユーザーの作成する
ManagementStudio(MSの純正SQL Server用GUIツール)の上でユーザーを作成する。

Expresswebのポリシーに引っ掛からないように以下のルールで生成する必要がある。

ユーザー名:4文字以上
パスワード:8文字以上英数記号が必要

※.作成したDBに対してユーザー権限に[db_owner]を付与しておくこと。

(3).接続文字列をWeb.configに設定する

[css]
<connectionStrings>
<remove name="LocalSqlServer"/>
<add name="LocalSqlServer" connectionString="Persist Security Info=False;Server=PCNAME\SQLEXPRESS;Initial Catalog=hogedb;PASSWORD=$Hoge1234;User ID=hogera" providerName="System.Data.SqlClient" />
</connectionStrings>
[/css]

※.ExpresswebのDBサーバー名はExpresswebコントロールパネルにログインして
[スペース]-[(スペース名)]-[スペース詳細を表示]に記述してある

(4).ASP.NET構成の接続テスト
Web.configを保存したらASP.NET構成にて必要な設定を行う
ASP.NET構成

(5).ローカル側にてデータのエクスポート
ManagementStudioにてDB名を右クリック [タスク]-[スクリプトの生成]にてクエリを生成する
SQL Server Management Studio

(6).Expresswebにデータのインポート
基本的にExpresswebのSQLServer操作はmyLittleAdminというWebアプリにて操作するらしい。
こんなツール知らなかったけど、phpMyAdminよりは出来が良いかもしれないと個人的には思った。
myLittleAdminはコントロールパネルから[データベース]-[SQL Server 2008]-[データベースを参照]にて起動する。
起動したmyLittleAdminの[ツール]-[新しいクエリ]を開き、先ほど生成したクエリをペーストして[実行]ボタンを押せばインポート完了。

一応、これで作業は一通り完了。

ちなみに私の環境は以下の通りです。

Visual Studio 2008 Professional

SQL Server 2008 Express

なお、ここまでの説明で意味がサッパリな人はExpresswebを使わないほうが無難です。

あとHTTPモジュールが動かないのが解決できない。 気が向いたらサポートに問い合わせることにしよう。

などとここまで書いてから箇条書きのところに

<ol>を使おうとしたら、連続してないと駄目らしい。
勝手に妙なタグ補完されて、意図したレイアウトにできない。
有名だから使ってみたけど、こんな使いにくいブログにするんじゃなかった・・・。

Windows7 64BitにSSMSEがインストールできない

開発機(Windows7 Ultimate 64bit)にSSMSE(Microsoft SQL Server Management Studio Express)をインストールしようとすると

このパッケージをインストールするときに予期しないエラーが検出されました。
(中略)エラーコードは29506です

とか言われてこけて、その対処に手間取った。

エラーコードで検索するとUACの問題と出るのでUACを無効にしてもインストールに失敗した。
いぶかしみつつ管理者権限でインストール・・と思っても右クリックメニューに「管理者として実行」が出てこない。
あれ?MSIって管理者権限指定できなかったっけ?
ならRUNASだね、と思ったら実行ファイルじゃないから巧くいかない。
MSCにおけるMMC.EXEみたいに関連づけられた実行ファイルがあるんだろうけど、単純にそれを知らない。
ということで再度検索。
msiファイルを管理者権限で実行する
なになに?msiexecを使えばいい?
ということでRUNASで管理者ユーザーで実行しても失敗する。
なんで?
コマンドプロンプトをかまして

runas /user:Administrator "cmd /k msiexec /i C:\Users\yuh\Downloads\SQLServer2005_SSMSEE_x64.msi"

みたいにしても駄目・・・で、気付いた。
コマンドプロンプトを起動するときに「管理者として実行」をすればいいんじゃないか。

msiexec /i C:\Users\yuh\Downloads\SQLServer2005_SSMSEE_x64.msi

これで成功した。
どうやら「管理者として実行」はRUNASでは同程度のオペレーションを実現できないらしい。
まあ確かにセキュリティを考えるとそれが正しいんだろうけど・・納得いかんなぁ。
もしかして・・・と思って再検索したら、普通にこのやり方で処理されてる方がいた。
DB:: Windows7上にSSMSEEをインストール
検索が足りなかった。

ワタシ馬鹿よねぇ~。お馬鹿さんよねぇ~(;_;

汎用CSV読込フォーム

ブログでは初めてのプログラミング関係の記事です。
CsvReader動作イメージ

下記に汎用CSV読込フォームに関する記事を公開しました。
汎用CSV読込フォーム CsvReaderについて

使い方とかソースコードの説明とか省略しまくったので、もし質問があればコメントをください。
もちろん指摘やバグ報告も歓迎します。

まあ、すぐに対応できるとも対応するとも限りませんがね:-p)

線分の分割

たまにはいつもの自転車記事とは毛色の違う記事を投稿してみます。
以前にGIS(地理情報システム)の補助ツールを開発したことがあるのですが、その時に必要に迫られて幾何を勉強し直して、問題を解決したことがあります。
その成果を以下に公開しました。
指定間隔(秒)による直線(線分)の分割について
必要な人は検索で勝手に見つけてくれるでしょう。

そもそも、まず解決を図るため社内の自称理系の人とかに問い合わせてみましたが、芳しい答が得られなかったのが学習の切っ掛けです。
その時に実感したのは、いわゆる文系理系なんて高校数学のレベルでは関係ないな、ってことです(参考書を読み直せばケアできるレベルという意味)。
高校の時、まったく数学に興味がなかったので幾何の中間テストで5点なんて破壊的なスコアを叩き出して、数学教師に呼び出された自分でも、必要に迫られれば解決できるんだなぁ、なんて人生わからんもんですね。
まっ、そんなアホな雑感は置いても、幾何がこんな役に立つなら、数学は向いてないとか勝手に自分の限界を決めたりせずもっと勉強しておけばよかった。
後悔後に立つ。

なお件のGIS補助ツールの開発において、その他に当たり判定とかも必要に迫られたため学習しました。
ゲームの人には常識でしょうが、アレはアレで自分には結構面白い体験だったので、気が向いたときにでも記事にしようと思います。