Windows10でシムピをプレイできるようにする[secdrv.sys移植]

最終更新:2016年06月29日

Windows10ではシムピが起動しない!何故か?!
シムピCDにはSafeDiskっていうコピープロテクトのDRMがかけられていて、
Sims.exeを起動するときにゲームCDが確認できないと立ち上がらないようになっている。
このCDの確認動作に必要なデバイスドライバが更新されなくなり、正式にリリースされた後のWindows 10には存在しなくなりました。
(Vista、7、8.1では動作を抑制するアップデートがあっただけで、必要デバイスドライバの削除まではされてない)

このページでは、Windows 10でシムピを遊ぶための手段の一つとして、
Windows 7、8.1のシステムフォルダに入っている「secdrv.sys」をコピーしてきて
Windows 10のシステムフォルダに移植しよう!というページです。

用意するもの

用意するファイルは以上。
シムピのインストールは、Windows 10でもWindows 8.1と同じようにできるので、先に済ませておきます。

Windows 10が64bit版か32bit版かわからない場合は、スタートメニューのアイコン(デスクトップの左下角の窓アイコン)を右クリックして、「システム」を選択。出てきた窓の中ほどに「システムの種類」という項目があるので、そこを確認してみてください。

Windows 10 64bit版の場合

デバイスドライバsecdrv.sysをWindows 10で使えるようにする作業はちょっと長いですが、
シムピをプレイする前後に毎回する事は、この項目最後の「Windowsをテストモードで起動する」項目の内容のみです。
最初だけちょっと頑張ろう。

Windows 10 SDKのインストール

1.9Gほどストレージに空きが必要です(テスト署名作業が終わったらアンインストールしておk)。

準備の項目でダウンロードしておいたインストーラーsdksetup.exeをダブルクリックし、インストールを始めます。

  1. インストール先の決定。デフォルトで赤枠内が選択されているので、
    特に問題なければこのまま右下のNextをクリック。(このページで示す手順では、このままにしとくのが楽です) インストール先を決定
  2. Microsoftに匿名でデータを送信するか聞かれます。詳しくは謎。
    デフォルトはYesになっていますが、どちらでもいいのかなー。選択してNextをクリック。 匿名でデータ送信を許可するか
  3. ライセンスの表示。Acceptで次へ。 ライセンス
  4. インストールするツールを選択。
    一番最後のWindows Software Development Kitを使います。
    他は使わないので、それだけ選択状態にして、右下のInstallをクリック。 インストールするツールを選択
  5. ユーザーアカウント制御(UAC)のダイアログが出るので、「はい」をクリック UAC
  6. インストールが始まり、進行度が表示されます。
    進行度がいっぱいになり「Welcome To Windows Development Kit~」と表示されたら、
    右下のCloseをクリックしてインストール終了。

テスト用の証明書を作成し、secdrv.sysにテスト署名を行う

64bitのWindows OSでは、デジタル署名がないデバイスドライバは、基本的に動作しません。
Windows 7、8.1からコピーしてきたsecdrv.sysは、署名が無い状態になっています。
署名に紐づけられる証明書は専門の機関が発行しているそうなのですが、
それとは別にドライバ開発中の動作検証のためのテスト署名を行う仕組みがあるので、
そちらを使ってsecdrv.sysを動かすことにします。

作業フォルダの作成とコマンドプロンプトの起動

  1. まずは、作業用フォルダの作成。
    任意の場所にフォルダを作って、Windows 7、8.1からコピーしてきたsecdrv.sysを入れておきます。
    このフォルダ内で署名の作業を行うことになるけれど、最終的にはフォルダごと削除しておkなので適当な場所に。
    Cドライブ直下に「テスト署名」という名でフォルダを作って、その中に入れてみました。 作業フォルダを作成
    (作業フォルダに入れた分以外にも、念のためsecdrv.sysはバックアップ取っておいてね!)
  2. スタートメニューを右クリックして、「コマンド プロンプト(管理者)」を選択 スタートメニューを右クリック
  3. ユーザーアカウント制御(UAC)のダイアログが出るので「はい」をクリック UACダイアログ
  4. コマンドプロンプトが管理者権限で起動する コマンドプロンプト起動直後

コマンドプロンプトは、命令文を入力してOSやソフトウェアを操作するツール。
Windows 10のコマンドプロンプトは、Ctrl+CCtrl+Vのキーボードショートカットによるコピペ操作が利くようになったので、8.1以前よりも使いやすくなっててよかった。

コマンドプロンプトでツールを操作する

それでは、前項で起動したコマンドプロンプトに命令文(コマンド)入力していきます。

  1. 以下の文字列をコピーして、コマンドプロンプトにペーストしてください。
    (赤字部分は、あなたが作成した作業用フォルダのパスに置き換えてください)
    cd C:\テスト署名
    
    ペーストすると、下の画像のように表示されます。 コピペした状態
    この状態で、Enterキーを押す。
    すると、コピペした命令文が実行され、下の画像のような表示になります。 cd命令にEnterした状態
    行の先頭が、作業フォルダのパスになりました。
    これは、「cd」というコマンドを使って、コマンドプロンプトが現在見ているフォルダを作業フォルダに変更したという状態です。
  2. 次は、Windows 10 SDKのツールを使って、テスト署名のための証明書を作成します。
    下の文字列をコピーして、コマンドプロンプトにペーストしてください。
    (Windows 10 SDKをインストールするときに、インストーラーのデフォルトから変更している場合は、青字部分を変更してください)
    "C:\Program Files (x86)\Windows Kits\10\bin\x86\makecert.exe" -pe -r -ss my -n "CN=myTest" myTest.cer
    
    ペーストした後にEnterキーを押して実行します。
    下の画像の赤枠で示した部分のように、「Succeeded」と表示されていたら成功です。
    証明書の作成が成功すると、作業フォルダに証明書ファイル(myTest.cer)が出現しています。 作業フォルダの中に証明書
  3. 作成した証明書の登録をします。
    作業中のWindowsの証明書を格納するところに、Windows 10 SDKのツールを使って登録します。
    下の文字列をコピーして、コマンドプロンプトにペーストしてください。
    (Windows 10 SDKをインストールするときに、インストーラーのデフォルトから変更している場合は、青字部分を変更してください)
    "C:\Program Files (x86)\Windows Kits\10\bin\x86\certmgr.exe" -add myTest.cer -s -r localMachine root
    
    ペーストした後にEnterキーを押して実行します。
    下の画像の赤枠で示した部分のように、「CertMgr Succeeded」と表示されていたら成功です ローカルコンピューターの「信頼されたルート証明機関」に登録
  4. 証明書の登録その2。これも作業中のWindowsへの登録です。
    下の文字列をコピーして、コマンドプロンプトにペーストしてください。
    (Windows 10 SDKをインストールするときに、インストーラーのデフォルトから変更している場合は、青字部分を変更してください)
    "C:\Program Files (x86)\Windows Kits\10\bin\x86\certmgr.exe" -add myTest.cer -s -r localMachine trustedpublisher
    
    ペーストした後にEnterキーを押して実行します。
    下の画像の赤枠で示した部分のように、「CertMgr Succeeded」と表示されていたら成功です ローカルコンピューターの「信頼された発行元」に登録
  5. 作業フォルダにコピーしておいたsecdrv.sysに、作成した証明書とWindows 10 SDKのツールを使ってテスト署名を行います。
    下の文字列をコピーして、コマンドプロンプトにペーストしてください。
    (Windows 10 SDKをインストールするときに、インストーラーのデフォルトから変更している場合は、青字部分を変更してください)
    "C:\Program Files (x86)\Windows Kits\10\bin\x86\signtool.exe" sign -v -s my -n myTest secdrv.sys
    
    ペーストした後にEnterキーを押して実行します。
    下の画像の赤枠で示した部分のように表示されていたら成功です(中ほどに「Successflluy signed: secdrv.sys」)。 signtoolでテスト署名

作業フォルダ内のsecdrv.sysを右クリックし、メニューからプロパティを開くと、Windows 7、8.1からコピーしてきた直後には無かった「デジタル署名」というタブが出現しています。

テスト署名済みsecdrv.sysのプロパティ

これで、テスト署名の作業は完了です。

secdrv.sysをシステムフォルダ内にコピーする

前項でテスト署名を行ったsecdrv.sysを、下に示したフォルダにコピーします。

  1. 下の行をコピーして、エクスプローラーのアドレス欄に入力してEnterキーで開きます
    C:\Windows\System32\drivers
  2. 作業フォルダのsecdrv.sysを、開いたC:\Windows\System32\driversにコピーすると、「対象のフォルダーへのアクセスは拒否されました」というダイアログが出ますが、続行をクリック。 アクセス拒否ダイアログ

これで、デバイスドライバのインストール作業は終了です。

Windowsをテストモードで起動する

インストールは完了しましたが、通常のモードのWindowsのままでは、テスト署名のデバイスドライバは使うことができません。
これを使えるようにするために、Windowsをテストモードで起動します。

  1. コマンドプロンプトを管理者権限で起動し(「作業フォルダの作成とコマンドプロンプトの起動」の項目と同じ)、下の文字列をコピーして、コマンドプロンプトにペーストしてください。
    bcdedit /set TESTSIGNING ON
    ペーストした後にEnterキーを押して実行します。
    「この操作を正しく終了しました。」と表示されていたら成功です コマンドプロンプトでテストモードON
    • コマンドプロンプトを管理者権限で起動しなかった場合、「ブート構成のデータ ストアを開けませんでした。アクセスが拒否されました。」と表示されます。コマンドプロンプトを終了させて、管理者権限で起動からやり直します
  2. Windowsを再起動します。
    再起動すると、デスクトップの右下に、「テストモード」という表示とWindowsのバージョン、Build番号が表示されます。 テストモード中のデスクトップ表示

これで、システム側の準備はおわりです。
(シムピ起動後の操作は2015年10月版 シムピープルのインストールページの「プレイしよう!」項目で)



シムピで遊んだあとは、テストモードを解除して通常モードに戻します。

戻し方。

  1. コマンドプロンプトを管理者権限で起動し、下の文字列をコピーして、コマンドプロンプトにペースト。
    bcdedit /set TESTSIGNING OFF
    ペーストした後にEnterキーを押して実行します。
    「この操作を正しく終了しました。」と表示されていたら成功です コマンドプロンプトでテストモードOFF
  2. Windowsを再起動(または終了)します。
    起動後、デスクトップの右下の「テストモード」表示、Windowsのバージョン、Build番号が消えているはず。
    Windowsは通常モードに戻りました。

これで、一通りの流れは終了です。
次回からシムピで遊ぶときは、

コマンドプロンプト(管理者)でテストモードON
→ 再起動
→ シムピをプレイ
→ シムピを終了したらコマンドプロンプト(管理者)でテストモードOFF
→ Windowsを再起動か終了

という操作になる感じ。

Windows 10 32bit版の場合(未実験)

試していないのですが、署名の無いデバイスドライバをインストールしても機能しないのは64bit版Windowsだけなようなので、おそらく32bit版のWindows 10は、Windows 7、8.1からコピーしてきたsecdrv.sysをそのまま使うことができるのかもしれません。
その場合、C:\Windows\System32\driverssecdrv.sysをコピーすればシムピのプレイができるのかな?と考えるのですが、実際はどうなるのかわからないので、試した方いらっしゃいましたら是非教えてくださいな。

最後に

シムピの起動が確認できたら、Windows 10 SDKはアンインストールしてしまって大丈夫。
作業フォルダも削除してしまっておk。
Windows 10を再インストールする時に備えて、Windows 7、8.1からコピーしてきた未署名のsecdrv.sysはバックアップしておいてね!

Windowsのテストモードは、テスト署名のデバイスドライバも動くモード、ということらしいのだけど詳細は把握してません。

64bit Windowsに未署名ドライバをインストールする方法もあるのですが、他に把握してないドライバが何らかの理由で紛れ込んでた場合それも有効になってしまいセキュリティが下がります。
一時的なテスト用に書いておこうかとも考えたのですが、ページ長くなりすぎ+書きあがるの遅すぎになりそうだったので割愛しました。
テスト署名する前にシムピちゃんとインストールできてるかテストしたいよーって時とかは「Windows 10 署名なしドライバ インストール」とかでぐぐるとでてきます。

割と急いで試して書いた感じになってるので、わかりづらいところとか文字抜けてるとかあったら教えてもらえると大喜びです。




以下は参考にさせていただいた記事のリンクです。
どうもありがとうございました!

更新履歴