お問い合わせフォームにまつわるあれこれ

  • 投稿日:
  • by
  • カテゴリ:

 (この記事は要約するとGoogle reCAPTCHA v3を皆ちゃんと実装しているのかよ!というグチです)

 ひと月ちょっと前に、CS60新神戸を立ち上げるという相談がありました。早い話、ネット予約が出来るようにしたいということで、これについては早々に使えるソリューションを見つけました。

 問い合わせも必要だよねと、「お問い合わせフォーム」を設置するためにいくつか検索してみると、Googleフォームを利用する方法が見つかります。で、試すわけですが、送信者がGmailのアドレスだし回答のコピーを自動送信できるけど、これ求めているものとちょっと違う。さらに検索するとGoogle Apps Scriptと組み合わせると、問い合わせの内容を自動返信できるようになったので、まあこれでよいかなと一段落。と思ったのですが、運用するには不安な要素も。

  • フォームをメンテするときにうっかり操作ミスすると、既存問い合わせ済みのものが再送信される事故
  • フォームをサイトに設置したときに下部に「このコンテンツは Google が作成または承認したものではありません。」などという文言を表示、割り切ればよいことだけど
  • スパム対策はどうするの?Googleフォーム自体で自動送信するときは、画像選択のボット対策があるようだけど、それを無効にしてGoogle Apps Scriptで対抗する場合は無い?

 実際、Googleフォームで運用しているところも見られるので悪くはないと思うのですが、コントロールが難しいのがね。スプレッドシートへ自動転記されていくので記録として残すのに便利なのですけど。

 書込みフリーな「お問い合わせフォーム」というのはスパムメールの温床に繋がるので、スパム対策をどうしようかなと探していると、Google reCAPTCHAを使ったものが見かけられます。「私はロボットではありません」というやつもそれの一バージョンです。

 ベースとなるメールフォームは、フリー素材として配布されているものを流用。それにGoogle reCAPTCHA v2を設定(なぜv2を選んだかは直感)。それを組み込み色々試して使えそうかなと、各種ブラウザでの確認を始めたところ、Chromeだけ何故かうまくいきません。なぜかSubmitするボタンが無効になってしまう。さらにreCAPTCHA v2のチェックボックスではなく、Submitボタンやその近傍をくりっくしてもreCAPTCHA v2が反応する、なぜか画像選択がでまくる。といったことで散々な結果に。Android Chromeだと問題ないのに。

 reCAPTCHA v2を諦め、reCAPTCHA v3を実装に切り換え。この両者何が違うかというと、

  • v2はフォーム内に「私はロボットではありません」のチェックボックスが設置されるのに対し、v3は設置されない。ただブラウザ右下にreCAPTCHAのシールが常に貼られる
  • v2、v3ともにトークンという一定期間有効なデータを生成しサーバーへ送信。サーバー側でGoogleへ問い合わせ有効か否かを確認。異なるのはv3ではスコアという評価値が返ってくること。スコアが低いと怪しいやつという判断に繋がる

 さて、reCAPTCHA v3に切り換わっても、実装はほとんど変わらないと思いきやトークンの生成に落とし穴がありました。

 v2ではチェックボックスをチェックしてから再び要求されるまではトークンが有効なのでトークンの有効期間を意識する必要はないのですが、v3はページを表示してからトークンの管理が始まっていたのです。v3を記事にしてよく見掛けるのはページを表示したとき直後にトークンを取得、もう一つはフォームをSubmitするときにトークンを取得というパターン。

Goolgeのサンプルコードとして、次のコードを実行してねというのがあります。しかしv3の実装には落とし穴が待っていました。

  <script>
grecaptcha
.ready(function() {
grecaptcha
.execute('reCAPTCHA_site_key', {action: 'homepage'}).then(function(token) {
...
});
});
</script>
  • ページロード直後にgrecaptcha.execute()を実行しないと、サーバーチェックで "invalid-input-response" エラー
  • ページロード直後にgrecaptcha.execute()を実行しても、フォーム内にデータを埋め込まないとやはり"invalid-input-response" エラー
  • 定期的にgrecaptcha.execute()実行してトークンを再取得しないと、"timeout-or-duplicate" エラー。定期的というのは2分から3分の間の模様
  • 落とし穴ではないけどSubmit時にgrecaptcha.execute()しても、直近のgrecaptcha.execute()の結果とトークンが変わらなかった。推測するにGoogle reCAPTCHA v3はページを表示してから常に一定毎にトークンを更新する必要(かつページ内の埋め込みデータも更新)があって、更新しないとタイムアウト。頻繁にgrecaptcha.execute()しても一定期間はトークンが変わらないという特性がある模様

この落とし穴を確認するために、スコアが最低になるという状況も起きました。これらを検索してみたのですが日本語ページでは見つけられなくて、海外掲示板でこれに嵌りこんでいるのを見掛けました。日本語記事の多くがWordPressのContact Form 7というプラグインとの組み合わせなので個別運用で悩んでいる方は少ないのかもしれません。

あれこれコードを書いて、結局ページロード直後に実行およびsetIntervalによる定期実行に落ち着きました。

 せっかくなので、Googleフォーム風のチェックも出来るようにしたいと、フォームのページをサンプルから変更しています。jQueryを使うとこんなことが出来るんだねと感心しながらね。

 さてGoogle reCAPTCHA v3のスコア運用ですが、今は 0.5未満 で運用しようと考えています。ときどきスコアが悪くて送信しないという可能性があるのですが、スパムボット対策ということで配慮いただけたらと思います。(CS60新神戸を利用しようとする人でこれを見るのはほとんどいないと思いますが)

令にもいろいろあります

  • 投稿日:
  • by
  • カテゴリ:

20190401_reiwa.png

次の元号が発表されたわけですが、令という字を普段手書きする機会がほとんどなかったと思う。手書きでは楷書体だと思うのだけど、菅官房長官が掲げたものはどれなのだろうね。明朝にやや忖度?

20190401_reiwahapyo.png

明朝と楷書体や教科書では形が違うのですが、電算化というものの影響なのか、場所によっては、明朝の書き方じゃないと受け付けないところもあるらしい。普段身の回りには明朝かゴシックしかないしね。
ペン字は楷書体が基本だろうから、人によっては反発があるのかな。

違いについて、その内にバラエティ番組で取り上げられるのでしょうね。

ところで、「れいわ」を「令和」と素直に変換できた。IMEの予測変換をオフ、学習情報の消去をしても変換候補としてリストされる。実は先回りをして・・・なんてことがあるわけないか

と思ったけど、念のために...

Windows Vista ×
Windows 7 ×
Windows 8 〇
Windows 8.1 〇
Windows 10 バージョン1511 〇
Windows 10 バージョン1809 〇

Windows10では、今日初めてスリープから復帰させたPCでサインインする前にネットワーク接続を切ったので、どこかから引っ張ってきたということは無いはず。MSよ、どこから持ってきた?

発表されてすぐに検索したら"川岸令和"がヒットしたのだけど、それで登録されていた?

追記)手持ちのインストールイメージをVMWare Playerに試したら、Windows 8から入っていた。人名かな?

以前に次の記事を書いたのですが、所謂「おま環」だったようです。

メールの文字化け表示、Outlook2010は自己解決できないので、設定を見直してくれたらうれしい

私の場合、自宅でOfficeのOutlookを使い始めたのは2001年頃で、最初に作成したOutlook データファイルをそのまま使い続けています。どうやらそれが悪かったようで、当時のファイル形式は、「Outlook 97-2002 データ ファイル (*.pst)」というものです。

某サービスを検証していたところ、自動送信のメールがUTF-8でエンコードされていました。このことを某サービスへ問い合わせたところ、"今後の参考"というよくある返事を頂いたのですが、あらためて検索し直したところ、解決策に当たりました。

マイクロソフト コミュニティ:Outlook2013で受信メールが文字化けしてしまう。
意訳:Outlook データ ファイルを作り直せ
注)回答の中の、"送信メッセージで優先使用するエンコード方法 : 日本語 (シフトJIS) に変更"は、日本語 (JIS)の誤記かと

で、作成し直し某サービスのメールを受信しました。文字化けは解消!

ここまではよいのですが、代償が「仕分けルール」の破損でした。以前からワーニング状態でしたが "レジストリまたはインストールに・・・" というエラーで止めを刺してしまい、解決方法は仕分けルールの初期化か再インストール(あるいはOutlookのプロファイル作成し直し)。

次のページをみて「仕分けルール」の初期化と再作成が進行中です。

マイクロソフト コミュニティ:メール仕分けルールができなくなった。

「仕分けルール」が少ない人はしかたないなと実行できるのですが、多い人は・・使い続けるしかないかも。

もし実行する場合には、プロファイルのレジストリバックアップと、Outlook データファイルのバックアップさえあればなんとか元に戻すことは可能です。ここを参考にしてください。Outlook2013でも同様です。

Outlook 2010 を引っ越してみる

最後に、既に受信してしまった文字化けメールを新しいOutlookデータファイルへコピーしても文字化けは直りません、残念。

追記)馬渕さんのPCにも古いOutlookデータファイルがあって文字化けが起きてる。で、やってみたら、仕分けルールが初期化されるという事態があったものの事前に仕分けルールをエクスポートしていたおかげで事なきを得た。PCが2台あってサブで新しいファイルへ移行してから、メインへ移すということを行ったので一般的な環境とは違うかも。

半値八掛け五割引

  • 投稿日:
  • by
  • カテゴリ:

20190206_sanbio4592.gif

 数年に一度の下落だと思うので、チャートを残しておきます。IR一発で「半値八掛け二割引」を超える「半値八掛け五割引」に迫り、11710円から2440円へ叩き落されました。
IRが何かは、こちらをご覧ください。
http://kabumatome.doorblog.jp/archives/65935016.html
http://kabumatome.doorblog.jp/archives/65935357.html

日本株式の売買単位が10月1日をもって残された銘柄全てが100株に統一されるとのこと。

売買単位の統一について https://www.jpx.co.jp/news/1021/20180926-01.html

100株移行に伴って株式併合する銘柄は受け渡しが10月1日になる今日(9月26日)から100株単位となる。

日立製作所(6501)、東芝(6502)、富士通(6702)はそれぞれ株式併合したのだけど、

銘柄前日終値併合比率終値
日立製作所(6501) 777.3 5:1 3,893
東芝(6502) 331.0 10:1 3,345
富士通(6702) 826.2 10:1 8,214

併合比率で単位総数を2倍にした日立、と単位総数を変えない東芝・富士通という図があるのだけど、一般に見えるのは株価なわけで、東芝が優良銘柄の株価、富士通が値嵩銘柄の株価に見えたりするわけで、エッ?ソニーやトヨタより富士通のほうが高いの?となったりする。

よくわからないロジックで100株へ移行したみずほFG(8411)は低位株価(三井住友FG(8316)と同じようにすれば10倍の株価)を続けている。株式併合を選ばなかった三菱UFJ(8306)や野村(8604)なども中位株価だけどね。

100株統一って、各社の株主戦略によってずいぶんと株価を上下に動かしてしまったのだなと振り返ってしまった。

ちなみにETFは統一されていないので1/10/100とバラバラです。

追)100株に統一されるのは内国株、外国株は適用外のようで、出来高の大きい9399 ビートHDは1株単位なのだけど東証二部外国株所属。

Chrome様がせっつくので常時SSL化へ移行(途上

  • 投稿日:
  • by
  • カテゴリ:

最近のChromeブラウザは、非httpsなページを表示すると「こんなページを表示してよいの?(要約」といってくる

180905_chrome69_http.gif

URLがhttp://~だと「保護されていない通信」(少し前は「保護されていません」)を表示して、"このサイトは大丈夫!?"と心配してくれるわけなのだけど、Chromeブラウザの次期バージョン70では、さらに「保護されていない通信」となってエスカレーションするらしい。

daytradenet.com/breakscan.com(およびdiamondlifekobe.com他)を収容するサーバーは先月8月18日にサーバー更新を行い某社のVPSへ移行した。先代サーバーは2012年よりオンプレミス環境で運用してきた。昨年に保守期限をむかえサーバー更新をどうするかと検討を始めたところ、サーバー預託先がオンプレミス環境は縮小&現状維持との方針で新しいサーバーハードウェアに更新という話はなくなった。

サーバー更新話はしばらく燻った状態だったが、今年に入って"クレジット代行会社との一部通信はTLS1.0を廃止してTLS1.2に切り替えてね、それと1か月後だからよろしく"、いやそんな話は聞いていないのだが、"メールは半年前に送ったよね"(そんなメールは見ていないし、代行会社のお知らせにも無い)。世間的にTLS1.2へ移行する流れがあったので恐れてはいたのだけどね。切り替え部分は代替する手段があったのでサーバー更新までなんとかなった。
(TLS1.2については、各所でTLS1.0廃止が聞こえてくる。)

TLS1.2対応はサーバー更新せずとも暗号化通信に使用するライブラリ(OpenSSL)をアップデート(当時CentOS 5.7だったので、OpenSSLは0.9.8)すればよいのではとなるのだが、預託先からサーバーを新規インストールより大変。ということでこの機会にオンプレミスからクラウドへ移行することとなり、VPS選定/OS/常時SSLなどを決め、7月中旬より新環境での評価(色々アップデートされているので、旧環境をコピーしてきておしまいというわけにはいかない。PerlとMySQLでそこそこ変更が出た。)。そんなこんなでお盆明けの週末で切り替えになった。

さて常時SSL化(使うのはTLSなのだが慣用的にSSLというらしい)だが、最初はdiamondlifekobe.comから。独立しているから記事のURLをMovableTypeの検索/置換ツールでOK、と思っていたらCoolの記事引用があるのでそのままにしているとIE11で画像消失になるし、アドレスバーも混在コンテンツ扱い表示となるので、障害の少ない掲示板(パスワード入力もある)からhttpsへ移行、その後記事発行時に書き換える方法も分かったので、小さいサイトからhttpsへ移行。

ここまできてようやくdaytradenet.comの番(breakscan.comはUSMWを除き以前より済)。MovableTypeで構築している部分は変更ポイントが決まっているのでよいのだが、古いコンテンツはそのままhttpsでアクセスすると混在コンテンツ表示となる。HTMLのコードを眺めたら古いトラッキングツールが残っていた。今更ちまちま修正するのも面倒なので、表示するときに適宜削除・置換のCGIを作成して表示することにして、現在古いコンテンツを発掘している。その過程で知らない方の黒歴史と思しきものもあったが・・・

ということで、ほぼhttps化が進んだのだが、今月リリースされたChromeブラウザの69がちょっと困ったことをしてくれた(冒頭画像も同じ)。

前バージョンではアドレスバーにhttpsから全て表示していたものが、
180905_chrome68.gif

新バージョンではずいぶんすっきりしている。
180905_chrome69.gif

意訳すると、"鍵マークがあるんだから「https」に決まっているだろ。wwwどこ消えたかって?お約束の慣用的サブドメインなんて表示しなくてもおなじだよね。"と考えているかは知らないが、www無しとするのは考え物だと思う。(鍵マークは最終的に消えるらしい)

アドレスバーからコピーペーストすれば確かにhttpから始まるフルアドレスになるのだけど、アドレスバーを見て写すとか伝えるとかすると、見えないものは伝わらないということになる。Chromeブラウザはアドレスバーで「www.」を省略すると補完してくれたりするのだが、逆に「www.」無しで運用しているサイトではちょっと迷惑。

ということでChromeブラウザの今回の変更はちょっと気掛かり。

ちなみにhttpページでは、IEを除く、FirefoxやEdgeの各ブラウザでも「http://」を省略表示していた。
Firefox 52 esr版を使い続けていたので気が付かなかった。時代はいつのまに・・・

 

# 今回使用したSSL証明書はbreakscan.comを除くと、Let's Encryptを採用。有効期限は3か月だが無償利用でき、自動で更新できる仕組みが用意されている。これが無いと常時SSL化の普及はなかったと思う。ただ先代サーバーのように古いOS環境だと仕組みが利用できず管理に疲弊することになる。
有償のSSL証明書の利点はドメインシールが利用できたり、EV SSL証明書のようにアドレスバーが緑色になって企業名を表示するところだが、普通のブログサイトならLet's Encryptで問題ない。

 10年前に購入したNEC LCD3090WQXiのインバーターが劣化した模様で、スタンバイ状態から復帰して安定するまでの数10分間、バックライトが点滅したり数秒消灯したりし始めました。次に消えたら復活しないかも、トレード中に消えたままだったらどうしよう、ということで少し前から代替となるモニターを探していました。

現状に近いモニターはおよそ次のものになりますが、ドットピッチやドット数を考慮すると悩ましくなります。

  • 27インチ WQHD(2560x1440ドット)、ドットピッチ 0.233 mm
  • 27インチ UHD(3840x2160ドット)、ドットピッチ 0.155 mm
  • 27インチ 1920x1920ドット、ドットピッチ 0.248 mm
  • 29.8インチ WQXGA(2560x1600ドット)、ドットピッチ 0.251 mm ← 現使用中
  • 31.5インチ WQHD(2560x1440ドット)、ドットピッチ 0.272 mm
  • 31.5インチ UHD(3840x2160ドット)、ドットピッチ 0.181 mm
  • 32インチ UHD(3840x2160ドット)、ドットピッチ 0.184 mm
  • 37.5インチ 3840x1600ドット、ドットピッチ 0.229 mm

WQHDだと若干縦幅が不足、UHD(4K)だと150%に拡大しないと見難くなりそうです。それ以前にUHDモニターは接続端子がDP1.2あるいはHDMI2.0でないとならず(リフレッシュが60Hzにならない)、現グラフィックスカードがDVIとHDMI1.4のみなのでそれも買い替えなのかと、どれが評判なのかレビューを見て回っていました。WQXGAの少ない現行製品のひとつであるDell UP3017もDVI無しです。
地方都市ではレビューなどの評判を見て回るくらいしかできないんですね。近隣のヤマダ、ケーズ、コジマではデスクトップ一体型の展示がせいぜいでモニター単独の展示などゲーム用にちょこっとあるだけでした。

 WQXGAは製品数が少ないので中古品も見て回ったところ、Lenovo LT3053p というWQXGAモニターをソフマップの店頭情報に見つけ、電話確認で傷の状況や元箱付きで輸送時の心配が少ないこと、DVI端子があるのでそのまま入れ替え出来ることが決め手で購入に至りました。ソフマップの発送前確認でドット抜けがあるとの連絡がありましたが、受け取り後の確認で特に問題無いレベルでした。このLenovo LT3053pは発売当時Dell U3014と同レンジ帯でしたが国内の興味はUHDに移り始めていた時期で、国内のレビュー記事はほとんどありませんが海外に見つけました
値段ですが製造から5年経過で4万円弱でした。ヤフオクやメルカリでのDell U3014の実績は2万円台のようです。

20180703_LT3053p.jpg

画像がちょっと赤いですが、カラー調整のプリセットで赤みに合わせ、更にWindows10で夜間モードにセットしているからです。この「赤み」で表示する赤の調子はバランスが悪いようで眼にきつく、工場出荷調整済みのsRGBモードに夜間モードで落ち着いています。LCD3090WQXiではハードキャリブレーションでD50(白点を紙の白)に調整していたのですが、LT3053pにはハードキャリブレーション機能が無いので使えそうな組み合わせに落ち着きました。最近のモニターではペーパーモードやブルーライト低減などで色温度を低く合わせられますが、常時夜間モードを使うのも悪くない選択だと思います。

20180629_Nightmode.gif

 今回は同等性能での置き換えであったため表示する文字の大きさに変わりはなかったのですが、今まで23.8インチFHD(1920x1080ドット)だった人が27インチWQHDへ買い替えたりすると15%も文字が小さくなります。ドットピッチが大きく変わる買い替えとなる場合は、ウェブブラウザ上で文字の大きさがどうなるのか事前に確認されるのがよいかと思います。
IE11がカスタムで任意の倍率を設定できますから試してみてはと思います。ドットピッチは各製品の仕様表あるいはドットピッチ計算機で求められます。

 画面右側のモニターはEIZO L887の12年物で、CCFLバックライトの寿命である4万~6万時間の中値に入ってきてます。同等性能なんて絶滅しているので22インチWUXGAでドットピッチ合わせだけでもと思いましたがそれも絶滅寸前なんですね。これも壊れたら悩みそうです。

2019.3 自己解決しました。Outlook データファイルが (97-2002)形式だと文字化けします。

 (いまさらOutlook 2010の話題と突っ込まないでください。なにせ今までOutlook 2003を使い続けていましたので。)

 Outlook 2010(Outlook 2013も同様、おそらくはOutlook 2016も)で、メール形式がプレーンテキストかつエンコーディング形式がUTF--8のメールを受信すると文字化けで表示します。

エンコーディングをUTF-8で、メール形式がHTMLの場合(上段)とテキストの場合(下段) (メール原文はどこかのISPメッセージ)
20180402_mail_char.png

もし文字化けしていたら、大抵UTF-8で送られているので、手間を掛けると読めるようになります。

メッセージを個別に表示(プレビューで操作できない!)、メッセージタブ>アクション>その他のアクション>エンコード>日本語(自動選択)
20140402_chg_auto.png

日本語自動選択なのだから正しい表示に選択してくれると思いきややはり文字化け、同じ手順で最期をUnicode(UTF-8)でようやく読めるようになります。
20140402_chg_utf8.png
文字化けが直ったら保存

 

 それでは、メール形式がHTMLならエンコーディングはUTF-8で大丈夫だよね、と思いきやOutlook 2010はHTML形式のメールをまずはテキストで表示する機能を持ちます。

20180402_auto_text.png

このまま返信メッセージを作ると再びメール形式テキストでエンコーディングがUTF-8のメールが生産されてしまいます。ここでエンコードを日本語(JIS)に変える人は少ないです。

こうやって、なんだか文字化けが発生すると文句を言いながら、その当人が文字化けが起きうるメールを送信するのです。

 では、他のメールソフトはどうかというとOutlook 2003では起きていなかったので、馬渕さんから文字化けといわれても「頑張ってください。一応こちらは日本語JISで送るよう留意します。」でした。

返信時は、日本語(JIS)に変更
20180402_chg_jis.png

 手元にあるメールソフトではThunderbirdは、Text/UTF-8なメールの受信は問題ありません。もっとも送信時のデフォルトエンコードがUTF-8なので、Thunderbirdからのメールは文字化け表示が多いかもしれません。Windows 10のメールアプリはメール形式がHTMLだけのようなので、Outlook 2010で受信するとText/UTF-8なメールが生産される可能性が高くなります。

 こう書き連ねていますが、そもそもHTML形式を推し進めていたのはXP時代のOutlook Expressのデフォルト形式がHTMLだったかと思います。ところがスパムメールが問題になってくるとOutlookは受信時にまずテキストで表示しようとなりました。テキストなら怪しいドメイン名も表示されます(HTMLだと表示とリンクは別物にできます)。
マイクロソフトが文字化け表示の要因を作っているのに、自身で解決しないのはなんていうマッチポンプ。ところがWindows 10のメールアプリだと文字化けせずに表示できるのですから......

 という理由で、デイトレードネット宛てのメールは、テキスト形式(日本語(JIS))で送ってほしいのです。

 以下はOutlook 2010での設定ですが、HTML形式でメールを作成するならエンコードはUTF-8を選んでください。

20140402_set_text.png

20180402_set_jis.png

 ところで、何故「日本語(JIS)」(ISO-2022-JP)なのかといえば、電子メールシステムを日本に持ってきたときの時代背景(1980年代)があったとだけ述べておきます。

なぜXPS8930だったのかですが消去法です

  • 投稿日:
  • by
  • カテゴリ:

XPS 8930
https://www.daytradenet.com/Cool/archives/2018/03/280708.php

これをネタに、デイトレードなときどき日記で
何故これを選んだのか?について何か書いてください。

ということなのですが、絶対条件が決まっているので他の選択肢がなかったのです。

その絶対条件とは?

  • モニター3台、DVI(DualLink)あるいはDisplayPortで接続
  • SSDは寿命を考慮すると容量はなるべく大きいものが良い
  • CPUは現状より早い方が良い
  • ディスクは起動ドライブがSSD、作業用とバックアップ用にHDDを分離
  • リモートメンテのため、OSはリモートデスクトップ機能があるPro版
  • やはりデルで買うかな

最初の条件で、独立したグラフィックスカードを選択できることが必須になります。この時点で選択できるPCはXPSタワーのみになります。CPUがRyzenなゲーミングデスクトップ(Inspiron 5675)があるって?これ法人向けには設定されていません。ALIENWARE Auroraなら法人向けもあるだろう?やっ、確かにそうなのだけどさらに値段が上回るし筐体も重くなる70も過ぎている方に何買わせようと......、でもOCメモリや64GBメモリは確かに...、いやいや。

次に素のXPSタワーかスペシャルエディションかはSSD容量で決定、512GBを選択できるNew XPSタワースペシャルエディションとなり、選択できるモデルは1種のみでCPUもグラフィックスカードの選択もありません。ぶっちゃけ、一番良いのをもってこいと同義です。正直NVIDIA GTX1080なんてオーバースペックもよいところ、GTX1060で十分でこの差だけで市価4万も変わりますが選べないものは仕方ありません。ちなみに適当なPC通販で同様の構成を選ぶと似たような価格となります。

つまるところ、SSDを512GBとした時点でALIENWARE以外はXPS8930の一番高いのしかなかったわけです。

CPUはそういった理由で、Core i7 8700K (6C/12T)となっています。2年前のものがCore i7 6700K (4C/8T)なのでぶっちゃけ違いを感じないのではないでしょうか。

ちなみになぜSSDを512GBにこだわったかといえば、SSDの微細化で主流がMLCタイプからTLCタイプへ移っています。自分の認識ではメモリセルの耐久性はMLC>TLCです。コントローラの性能向上でそれが問題にならなくなっているようですが知ってしまえば考慮すべきものになります。なので、なるべく余裕をもたせる選択となるわけです。

自分の環境だと年15TBが実績で、耐久性が160TBWということで10年、余裕をもって8年といったところでしょう。

トレードでは分析に高負荷アプリケーションを用いるのでなければ、ここまでPCは必要ありません。せいぜいモニターとそれを接続するグラフィックス環境、それにどこまで奢るかだと思います。しかしデルの場合、どこかで最上位を選ぶと他も併せて最上位になるため必然的に今のモデルとなったわけです。

参考までに今機種と前機種の主要構成です。

主要パーツXPS8930 (2018/3)XPS8900 (2016/3)
CPU Core i7-8700K
up to 4.7GHz (6C / 12T)
Core i7-6700K
up to 4.2GHz (4C / 8T)
メモリ DDR4-2666 8GB x2
(増設で計32GB)
DDR4-2133 8GB x4
(計32GB)
グラフィックスカード NVIDIA GeForce GTX 1080 8GB GDDR5X
(DVI, DP x3, HDMI)
NVIDIA GeForce GTX 960 2GB GDDR5
(DVI x2, DP, HDMI)
起動SSD 512GB (M.2 PCIe x4) 256GB (M.2 SATA)
OS Windows 10 Pro 64bit Windows 10 Pro 64bit

いやいやながらWindows10へアップグレードの顛末

  • 投稿日:
  • by
  • カテゴリ:

 Windows7の延長サポートが後2年で切れます。 Windows10へ切り替えずに未だ使用している人も多いかと思います。 自分のPCも今週ようやく切り替えました。

 使っているソフトウェアの事情(Windows10での動作可否)もありいけるところまでいこうかと考えていたのですが、先月後半辺りから頻繁にBSoD(いわゆるブルースクリーン)が出始めntfs.sys で落ちることもあったのでSSDのコントローラ故障も疑いHDDへ交換してみてもBSoDや突然リブートがやっぱり起き、その間隔も短くなってきていることからこのままでは最悪の事態(何ら手を打てずに起動できず)が予想されるので、主要部品の入れ替えとサポートOSの必然性からWindows10へ切り替えることになりました。

 まず入れ替える主要部品は、推定故障部品であるマザーボードです。発生しているBSoDは特定されておらず、イベントログにBSoDのストップコードさえ記録されていないこともありました(これもSSDを疑った要因なのですが)。これではマザーボード上の部品に何かあると疑わざるおえません。マザーボードを入れ替えるにしても使用しているCPUがAMD FX-6300であったこともあり、入手可能なマザーボードは限られ、すでに主要通販での取り扱いはなくAmazonでもマーケットプレイスのやたら高額なものばかり、その中で一つだけ該当品を見つけました。が、これを買ったときにそれでもBSoDが収まらない可能性を考えてしまい、結局マザーボード/CPU/メモリの交換となり必然的にWindows10となりました。

20180331_new_parts.jpg

 主要パーツの新しい構成は次の通りです。

パーツ新しい構成直前の構成
CPU AMD Ryzen 5 1600
(6C / 12T)
AMD FX-6300
(3M / 6C)
マザーボード Asrock AB350 Pro4 Gigabyte GA-990FXA-UD3
メモリ DDR4 -2400 4GB x2 DDR3-1600 4GB x2
LANカード Intel Gigabit CT Desktop Adapter
グラフィックスカード NVIDIA GTX750
SSD/HDD SSD Crucial MX200 500GB
電源 Seasonic SSR-450RMS
OS Windows 10 Pro 64bit Windows 7 Professional 64bit

 CPUは、最初Ryzen 5 1400(4コア/8スレッド)で十分と思ったのですが、何故かRyzen 5 1600(6コア/12スレッド)をカートに入れてました。4月にRyzen 2000シリーズが販売されるのが分かっていたのですが、BSoDの発生状況に急かされました。時期に余裕があればRyzen 5 2600にしていたと思います。実際に組み上げてCPUの使用状況を見る限りRyzen 5 1400で十分と思いましたけどね。
 ここでなんでCPUをIntelにしなかったかといえば、10年以上AMDを使い続けているし、最近問題になったCPU不具合でもRyzenの方が状況が悪くないしね。馬淵さんの新しいPCはIntelなのにだって?そこは一番上のCPUで性能低下を力押しですよ。本当は選択肢がIntelしかないだけですけど。
 マザーボードは、ATXサイズで安くて目に付いたのがこれだっただけ。残念ながらちょっと不具合が有りますが......
 メモリは、自分の環境では8GBで必要十分です。VMWare Playerで偶にもう少しと思うことがありますが。
 なぜLANカード?とお思いでしょうが(普通別途用意しないですね)、WIndowsのアクティベーションのためといっておきましょう。他一時期オンボードLANに信用が置けない時期があったもので。
 他は流用で、SSDは1年半、電源ユニットは1年弱使用です。

CPU遊びすぎです。元はこの半分でも十分足りていたのですから。
20180402_cpu_load.png

 

 さて、部品の顛末はここまでにして、インストールの顛末。Windows10自体は2年半前にリリースされていますから今更なことですけどね。
 前提条件として現状のWindows7環境をアップグレード。えっ、無償アップグレード期間は過ぎている?そこはあれを...、じゃなくて、ちゃんと無償アップグレードが可能な時期にアップグレードを試していて、駄目なソフトウェアはこれか~などと当たりを取っています。それに一からソフトウェアをインストールしていたらそれだけで一日が潰れてしまいます。

 今回はWindows7な環境から、新しいパーツを組み込んだ環境でWindows10をインストールとなります。順番に、

  1. 今回WIndows10へのアップグレードなので、インストールイメージを事前にダウンロードしておきます。
  2. Windows7環境の旧構成で不要なソフトを整理後、Acronis True Imageで起動ディスク(SSD)をイメージ化しバックアップ。
    Acronis True Imageは、WDかSeagateのHDDが接続されていれば、それぞれのメーカーが用意しているOEM版を利用できます。SSDも限定版が用意している場合があります。
    LAN内で固定プライベートIPを割り振っている場合、DHCPから取得するように変更します。もし変更しないでいるとアップグレード後同じIPが割り振れない状況となります。デバイスマネージャで非表示デバイスを削除すればよいのですが、ちょとしたお呪いで起動する必要があります。
  3. 旧構成をPCから取り外します。このときPCケース内には埃が溜まっていることでしょうから掃除推奨です。
  4. 新構成で組み上げ、Windows7が入っているSSDを接続して起動。なおUSBデバイスはキーボード・マウス以外取り外します。
    ここで不具合発生、USBで接続したキーボード・マウスが利かなくなりました。起動自体は問題なく立ち上がり新構成のデバイスも認識されドライバが組み込まれていくのですが、USBだけは駄目でした。
    Windows7はRyzenをサポートしていないので度々これを表示します。
    20180331ryzen_not_windows7.jpg
    デバイス認識が落ち着いたあと電源スイッチでシャットダウンし、再度起動で再びデバイス認識が落ち着くのを待ちます。
    やはりキーボード・マウスは利かないのですが、ここで旧構成のOSのエディションがProfessional版であったことが役に立ちます。リモートデスクトップ機能により他のPCから接続して操作することができるからです。もちろん事前に操作できるように構成しておきます。Home版であってもVNCで接続できるソフトウェアをインストールし構成しておけば操作できますが、追加ソフト不要なのがProfessional版のメリットです。
    もしここまででLAN接続が構成できなかった場合?残念ながらクリーンインストールしかなさそうです。
    操作が出来るようになったらWindows7のライセンス認証が解除されているでしょうから再認証します。認証されていないとWindows10へのアップグレードを実行できません。
    自分の場合、Windows7がアップグレード版であったことと、LANとSSDが持ち越しであったことが利いたのかは分かりませんが、電話認証となることなく認証されました。現在マイクロソフトのライセンス認証窓口は従来の24時間365日対応から祝日を除いた昼間対応となっているので、ライセンス認証に不安がある場合は夜間に作業しないほうが無難です。
    (LANはMacアドレスという固有情報をライセンス認証で参照され変更時のポイントが高いとずいぶん昔に見た覚えがあります。)
  5. Windows10のアップグレードを実行します。
    インストールイメージを別ディスクへ展開しておくか、DVDに焼いてDVDドライブに入れておきます。自分は接続しているHDDに展開しておきました。
    実行時USBメモリやSDカードリーダーなどのUSB機器があるとDVDドライブのドライブレターに影響があるようなので取り外しておきます。
    始まってしまえば新構成のPCで再起動を何回か繰り返した後、ローカルアカウントでサインインし、プライバシー設定(取りあえず全部オフ)、既定のアプリ選択(取りあえず全部解除)するとWindows10が起動します。
    この後Microsoftアカウントでのサインインに切り替えると、ライセンス情報がMicrosoftアカウントに紐付けられます。何らかの原因でクリーンインストールすることになったとき、ライセンス認証のトラブルシューティングで認証情報を紐付けることができます。

 

 ここからは、Windows10へアップグレードして、改めて気付いたことなどを記します。

  • 未だOutlook2003(Office 2003)を使っています。Windows10へアップグレードすると送受信出来なくなりましたが、修復セットアップで解消されました。一応Office 2010とOffice 2013も持っています。このアップグレードを機にOutlook 2010に替えましたがテキスト/UTF8なメールの文字化けが......
  • XP/Vistaの頃から使い続けていたWheel Redirector(ホイールスクロールが利かないマーケットスピードやExcel/VBAのため)が、Edgeなどのホイールスクロール動作に干渉していました。Wheel Redirectorを終了すること干渉は解消されるし、解除状態でマーケットスピード等でのホイールも動くようになったのですが、スタートアップに登録していたショートカットがどこへいったかです。今回はアカウントに紐付けられていたので次の場所にありました。エクスプローラで shell:startup を直接入力でいけます。
    C:\Users\(サインイン名)\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
    パブリックの場合は次の場所です。こちらは shell:Common startup
    C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
  • 実は問題調査のため何度かインストールし直しているのですが、内蔵型メモリーカードリーダーを接続したままアップグレードインストールを実行した結果、DVDドライブのドライブレターがメモリーカードリーダーの後ろへ移動してしまいました。元の位置に戻そうとしても見た目ドライブレターが割り当てられていないのにメモリーカードリーダーで占有している状況になっていました。内部接続のUSBケーブルを一旦取り外した後「ディスクの管理」で変更できました。
  • Firefoxでブックマークサイドバーの文字滲みが気に入らない。
    このサイトを参照してフォントをメイリオに変更しました。
  • 従来のSkypeを使用したい。
    SkypeはWindows10でUWP版が提供されているのですが、ちょっと気に入らないという場合、一旦Skypeをアンインストールし、従来タイプのSkypeをインストールします。
    https://www.skype.com/ja/get-skype/
    20180331_skype_download.png

    下向き>をクリックして「従来のSkype」を選択するとダウンロードできます。オーディオ設定でスピーカー・マイクの優先順位の変更や、UWP版で使えなくなっていたウィンドウ共有を使えるようになります。
    複数相手に別ウィンドウで同時に開くということをしなければ新しいSkypeでも問題ないと思います。
  • コントロール パネル
    「コントロール パネル」のアイコンは、「Windows 管理ツール」の中にあります。これをタスクバーやスタートにピン留めすれば簡単にアクセスできます。タスクバーにピン留めすると右クリックで機能へのアクセスが手早く出来るようになります。
  • 「スリープ」や「シャットダウン」のアクセス
    Windows7に比べてクリックが1回増えるに加え小さいです。これはWindows7のときのほうが良かったです。
    自分は就寝時にPCをハイブリッドスリープに落としています(SSDは駄目という記事を見掛けますが、1年半の書込総量が22TB程だったので5年以上は持つと思っています)。毎日のことですからスタートメニューの中にあった方が便利なので、ショートカットを作成しスタートへピン留めしています。スリープの作り方については少し検索すると出てきます。
  • Cドライブには通常「システムの復元」が構成されているので過去の状態に戻ることができ便利なのですが、今回のアップグレード後設定内容を確認したら「ディスク領域の使用量」が100%となっていました。そのまま気づかずに使い続けると、空き容量があるはずなのに無いということになりかねません。環境にもよると思いますが10GB程度設定しておけばよいと思います。
  • 「ファイル名を指定して実行」の履歴が残らなくなりました。これはインストール時に「プライバシー設定」をオフに設定していたためで、以下記事を参照してプライバシー設定の一部等を変更。
    Creators Update 導入後に、「ファイル名を指定して実行」で履歴が表示されなくなった場合の対処法

 その他、不具合など。

  • 今回使用のマザーボードの問題かもしれませんが、電源投入時BIOS起動画面が2回表示されてからOSブートに入るので、起動に少し待たされます。本来はUEFIでブートして高速起動するところなのでしょうが、Windows7のMBRな起動ディスクを使っている以上UEFIブートは出来ず、諦めるところなのかもしれません。他のマザーボードで同様の現象はあるようです。
    追記)BIOS起動画面が2回表示するのは増設のLANカード(Intel Gigabit CT Desktop Adapter)が原因でした。取り外すと1回表示となります。更にIntel BootUTILからLANカード上ファームウェアを無効で解消されました(ファームウェアアップデートも試したけど変化なし)。無効になるのはPXEブート機能なので問題ありません。またこれに伴い電源オプションの「高速スタートアップ」を無効にされていたのが有効になりました。
  • Bluetoothでヘッドセットとの接続に四苦八苦。
    これの原因が分からず難儀しました。Skypeで通話しようとするとSkypeがフリーズするのです。接続解除すると復活。おかしいのでペアリング操作を繰り返しているうちにペアリング自体も出来なくなる始末。これで数度Windows10のアップグレードインストールをやり直しました(そのたびにWindows7のイメージを復元)。
    結局、犯人は今回新たに購入していた「マルチフロントI/Oパネル AK-ICR-16A」のUSB2.0ポートでした。これのUSB2.0ポートは内部でセルフパワーハブを構成していて、ここを使用するとペアリングできるものの接続できないという事象が起きていました。パネル内のUSB3.0ポートやPCケースフロントのUSB2.0ポートでは正常動作なのだから何故気が付かなかったのかと不思議でした。
    ちなみにBluetoothはBroadcomのドングルで、Windows10の標準スタックを使用しているのですが、Android(Motorola G5)からペアリングは可能なものの接続は出来ずでファイル送信が出来ず、One Drive経由でファイル交換しています(もちろんUSB接続で出来ますが...)。PCからG5へはBluetoothネットワーク接続やファイル送信ができるのに...
    4/8 ファイル転送の方法を解決しました。
  • 再起動時にフリーズすることがある。リセットボタンで何事もなく起動するのでOSのシャットダウンは終了している模様で問題ないのですが、これもUEFIを使っていないことに関係するのでしょうか。
    追記)現象発生時にディスプレイの状態がプライマリがスタンバイ、セカンダリがアクティブということから、グラフィックスドライバをアップデートしました。ドライバ削除時にこちらを参照してDisplay Driver Uninstaller(DDU)を使ってみました。手順はこちらの通りに実施。その後数度の再起動ではフリーズは再現していません。
    LANドライバもIntelサイトからダウンロードしてインストールしようと試みましたが、セットアップ実行時にIntelのLANアダプタは無いと蹴られたのでそのままです。
  • アンチウィルスのNortonですが、WIndows10をアップグレードインストールすると一旦サブスクリプションが解除されアクティブ化を要求されます。ここでアクティブ化する際に使用していたライセンスが継続されません。ライセンス数が余っていればよいのですが枠一杯に使っている場合、Webサイトのマイノートンで使用していたデバイスを一度削除しなければなりません。マイノートンへサインインできないとアクティブ化出来ないということになります。
  • 追記)Windows 7時にLANにプライベートIPを固定で割り当てていたのですが、そのゴーストのようなものがレジストリに残骸となって再割り当てで阻害していました。
    使われなくなったネットワークカード、IPアドレスの削除、またはIPアドレス等の設定の変更を参照して削除、レジストリ削除なので慎重な操作が必要です。
  • 追記2)マウスが引っ掛かる。少し動かさない後で動かそうとすると一瞬遅れる、あるいはマウスカーソルが飛び飛びに動くとか。
    電源プランをRyzen用に変更してCPUを常時高クロックで動かすと少し改善されるが、それでも引っ掛かる。マウスのワイヤレスレシーバをUSB2.0ポートからUSB3.0ポートに移動したら治まった。
    そのUSB2.0ポートはバックパネルの最左端で従来からマウス・キーボードを接続する位置(古くはPS/2ポート)にあるから何時ものようにレシーバを挿していた。USB3.0ポートへ変えたら引っ掛からなくなった。最近のチップセットではUSB2.0が独立せずUSB3.0の下にぶら下がる形になっているのがこの現象の一因なのかもしれない。
    さらに追記)デバイスマネージャでUSBコントローラやUSBハブデバイスの「電源の管理」タブから「電力の節約のために~~~」をチェックオフすることで、マウスの引っ掛かりはほぼ解消。

他にも色々とあった気がするのですが、今回はこれで許してやるかってところです。