Scankeylx - プロダクトキー検索ツール on Linux

Copyright (C) [2005/10]-[2017/4] by Akinori Furuta.

ノート: 画像は開発中のものを使用しています。詳細な意匠、数値、文書が違っている場合が有ります。


ページ移動のお願い

おしらせ: au one net 「ホームページ公開代理」サービス提供が 2017/10/31 に終了します。 同時にこのページも公開終了となります。 新しい scankeylx のページ にて公開を続けますので参照してください。

Information: This page will be closed, because KDDI(au) will stop "public home page service" at October 31, 2017. Please refer to new scankeylx page.


ご利用ありがとうございます

[Down Load scankeylx_r1704b.zip]

md5sum: d4e000642f6fbf88e476ca37909717f9
sha1sum: 189526e493eac40d28fbce8f9bc25c21de70962b

名前の通りプロダクトキーをハードディスクから検索します。パーティション削除、 軽いフォーマット、システムファイル喪失、不良セクタ発生など Windows が起動しなくなってしまった状態でもかなりの 確率でキーを探します。

インストールまたはリカバリー途中でキーを紛失したことに気付いた場合に役立つかもしれません。なるべくなら、プロダクト ID (数字と 3 文字程度の英文字で構成された 20 桁の ID)を控えておくと、たくさん見つかった 25 桁のプロダクトキーのどれが正しのか判断が付きやすくなります。

Ubuntu または Lubuntu の live mode を実行環境にしています。次に示す様な機能や性能を満たしている必要があります。

機能項目 Ubuntu 最新版 を使う Lubuntu 最新版 を使う Lubuntu 12.04 を使う
起動方法 USB メモリまたは DVD に格納した OS から PC を起動できる。 USB メモリまたは CD(a1) に格納した OS から PC を起動できる。
CPU
  • 性能クラス: Core シリーズ, Athlon 64 程度以上
  • スレッド数: 2 個以上
  • 周波数: 2GHz 以上
  • 性能クラス: Pentium 4, Athlon XP 以上
  • スレッド数: 1 個以上
  • 周波数: 1GHz 以上
  • 性能クラス: Pentium III, Athlon 以上(a2)
  • スレッド数: 1 個以上
  • 周波数: 800MHz 以上(a3)
Memory 2Gi byte 以上 1Gi byte 以上 512Mi byte 以上
Graphic
  • 解像度: 1024x768 ドット 以上
  • 色数: 65536色 以上
  • 付加機能: 3D Graphics (Windows Aero 対応程度)
  • 解像度: 1024x768 ドット 以上
  • 色数: 65536色 以上
  • 付加機能: 特に必要なし

注記: (a1) 700Mbyte の CD-R を使用します。 (a2) Lubuntu 12.04 は Pentium Pro 以降に対応しています。 scankeylx も Pentium Pro 以降に対応する様に作られています。しかし、未テストです。 (a3) 500MHz 程度でも動作すると思われます。しかし、未テストです。操作に対して早い応答は期待できません。

USB Memory または USB Card Reader を用意してください。Ubuntu (Lubuntu) を使用するので若干 Linux の知識が必要になります。Linux を知らなくても何とかなるようには配慮していますが、多少操作が難しい場面もあります。

本リリース r1704b は手順を変更して KNOPPIX で実行できます。Raspberry Pi 3 で使う を参考にしてください。 Linux でUSB メモリに格納したファイルを開ける程度の技量が必要です。 操作に不慣れで、詳細な手順を参照する必要がある場合は、 (KNOPPIX 日本語版 download 理研)(KNOPPIX 日本語版 download KDDI) に対応した KNOPPIX 対応版 scankeylx r1208a を利用してください。


目次

添付文書


手っ取り早く使いたい

Ubuntu, Lubuntu を起動する方法によって次の表に示した手順を選択してください。 検索しようとする PC で可能であれば上から順にお勧めする方法です。

Ubuntu, Lubuntu 起動方法手順へのリンク
USB メモリ すぐ後に続く手順に進みます
DVD-R と起動用 USB メモリ併用 DVD-R または CD-R と起動用 USB メモリを併用して Lubuntu を起動し scankeylx を使用する
起動用 DVD-R または CD-R と起動用 USB メモリを併用します。 USB メモリから起動できず、光学メディアから起動できる場合にお勧めする方法です。 途中から USB メモリを使った起動に切り替わります。 Lubuntu 12.04 desktop 32bit を使用することを推奨します。 他に Lubuntu 16.04, 16.10 または Ubuntu 12.04, 14.04 を使用できます。
CD-R CD-R (光学メディア) から Ubuntu を起動して scankeylx を使用する
起動用 CD-R (光学メディア) と scankeylx だけを格納した USB メモリを使用します。 古い PC で Ubuntu 10.04, 10.10 を使用するのが適している場合にお勧めです。

ここからの説明は Ubuntu, Lubuntu 16.04 PC 向けの最新版を起動可能な USB メモリを作成し、そこに scankeylx の必要ファイルを置く方法で利用する手順です。2Gbyte 以上の USB メモリ、 または USB カード・リーダーと 2Gbyte 以上の SD Card の様なメディアを用意してください。

注意: この手順の通り進めると用意した USB メモリまたはメディアに保存されたファイルは全て消去されます。

U1.

Ubuntu の web サイトにアクセスして Ubuntu をダウンロードします

[Windowsで操作] Ubuntu をダウンロードします。Download をクリックすると募金募集のページになります。 下の方に現れる Not now, take me to the download をクリックすると先に進みます。

ノート: 次に示す条件が満たせない場合は、先の Ubuntu または Lubuntu の live mode を参考にダウンロードする OS を選んでください。 おおよそ Windows 7 搭載 PC は条件を満たします。Windows Vista を含むより古い OS を搭載した PC は条件を 満たさない場合が多いです。条件を満たせない場合 Lubuntu Desktop 32bit を使ってください。
項目条件
プロセッサデータ幅 64bit
プロセッサ周波数 2GHz 以上
プロセッサ スレッド数 2 個以上
メモリ容量 2Gi byte 以上

Lubuntu Version 16.04.x が適している場合は Download Lubuntu Desktop 32-bit を クリックして Lubuntu をダウンロードして下さい。下の画像で 16.04.1 になっている個所は更新によって 16.04.2 または より大きい枝番になります。

U2.

Universal USB Installer サイトにアクセスしてダウンロードします

[Windowsで操作] Universal USB Installer (UUI) をダウンロードします。広告欄のダウンロードボタンを押さない様に注意してください。 ダウンロードしたファイルは直接実行できる EXE ファイルになっています。展開は不要です。

ノート: サイトのデザインは良く変わります。上の画像は参考として見てください。
ダウンロードがすぐに始まらない場合が有ります。 タウンロードするファイルの検査に時間が 30 秒から 1 分程掛かることがあります。
MD5 sum を検査するツール(FCIV)がMicrosoft より提供されていますMD5 sum を検査するツールのページを日本語に機械翻訳したページ

U3.

Universal USB Installer を起動して Ubuntu (Lubuntu) を USB メモリにインストールします

注意: この操作を始める前に、PC に接続している 使用していない外付けハードディスク、携帯電話、デジタルカメラ、 音楽プレイヤーなどは外しておいてください。接続したままだと誤操作で内容を消してしまう可能性も有ります。

[Windowsで操作] ダウンロードしたフォルダーを開いて、 "Universal-USB-Installer" をクリックまたはダブルクリックして起動します。

ノート: Internet Explorer で後からダウンロードしたフォルダーを開くにはメニューバーより ツール(T) (表示されていない場合は [ALT] + [T] を押す)→ ダウンロードの表示(N) をクリックしてください。ダウンロードの履歴が表示されます。 ここで ファイルを開く あるいは 場所 の列にある項目をクリックしてください。

[Windowsで操作] 次の様なセキュリティ警告がでたら、 実行 をクリックして先に進みます。

[Windowsで操作] Agree をクリックして先に進みます。

[Windowsで操作] Step 1 の個所をクリックして "Ubuntu" ("Lubuntu") を選択します。

[Windowsで操作] Step 2Browse クリックします。

[Windowsで操作] ダウンロードした Ubuntu (Lubuntu) desktop の "ISO ファイル" を選択して 開く ボタンをクリックします。

[Windowsで操作] Step 3: Select your USB Flash Driver Letter Only の下に有るプルダウンをクリックします。

[Windowsで操作] Ubuntu (Lubuntu) を起動する USB memory として使用するドライブを選択します。USB memory の容量を確認して Ubuntu (Lubuntu) 起動のために使用するか確認してください。

[Windowsで操作] We will format X:\Drive as FAT32 にチェックを付けて、Step4: Set a Persistent file size for storing changes (Optional). は 512MB~600MB にして下さい。[←] [→] キーで微調整できます。 Create をクリックして先に進みます。

[Windowsで操作] 最終確認のダイアログです。フォーマットされて消されても良いドライブか確認して はい をクリックしてください。 ここで いいえ をクリックすれば USB memory の内容は消さずに Universal USB Installer を終了します。

[Windowsで操作] 処理経過表示です。 特に操作をする必要は有りません。処理終了まで Close ボタンは灰色のままです。

[Windowsで操作] 処理経過表示です。 特に操作をする必要は有りません。

[Windowsで操作] 処理は全て終了し Close ボタンが押せるようになります。 Close ボタンをクリックして終了します。

続けてこの USB memory に scankeylx を実行するのに必要なファイルをコピーします。

U4.

scankeylx をダウンロードして USB メモリのルート・フォルダに展開します

[Windows で操作] scankeylx_r1704b.zip をダウンロードします。

[Windows で操作] ダウンロードした zip ファイルを右クリックします。

[Windows で操作] すべて展開 をクリックします。

[Windows で操作] 参照(R)... をクリックします。

[Windows で操作] Ubuntu (Lubuntu) をインストールした USB メモリを見つけてクリックし、 OK ボタンを押します。

ノート: Lubuntu をインストールした場合は Install Lubuntu になります。

[Windows で操作] 展開(E) をクリックして zip ファイルの中身を USB メモリ上に展開します。

展開後の USB メモリの内容は次の様になります。下の画像は開発中に撮ったものです。最新のファイル構成はscankeylx 展開内容を参照してください。

DVD-R (光学メディア) に Ubuntu (Lubuntu) を書き込んで起動する場合はこのリンク先の手順に進んでください。

以上で Windows で行う操作は終了です。

U5.

プロダクトキーを検索しようとする PC で Ubuntu (Lubuntu) を USB メモリから起動します

作成した Ubuntu (Lubuntu) 起動 USB メモリを PC に接続してください。

電源 ON または再起動操作をします。

USB メモリより起動する様に BIOS を設定・確認します。お使いの機種のマニュアルを参考にして設定してください。多くの PC では [F2] または [Delete] キーで設定画面が現れます。 [F8][F11][F12] いずれかのキーを押して起動するデバイスを選択できる機種もあります。

ノート: 起動するデバイスを選択する画面で同じ USB メモリが 2 つ見える場合が有ります。その場合、UEFI, BIOS, USB のいづれかが選択肢の表示に付加されていることが多いです。 選択の目安は次の通りです。
Ubuntu (Lubuntu) の版選択
32bit UEFI が付いていない方を選択してください。
64bit まず UEFI が付いていない方を選択してください。
これで起動に失敗する場合は UEFI が付いている方を選択してください。

U6.

Ubuntu (Lubuntu) をインストールしないで「試用」で起動します

ノート: [↑] [↓]キーを 連打しながら起動すると次の様な画面になります。使いやすい言語を [↑] [↓] キーで 選び [Enter] キーを押してください。 英語キーボードを使用している場合は、English のまま進めて下さい。

言語選択の後、次の手順に示す画面になります。起動が早くなります。

次の様な Installer boot menu 画面が現れたら "Try Ubuntu without installing" (" インストールせずに Ubuntu を 試してみる(T)") をカーソルキーで選択し [Enter] キーを押して次に進みます。 現れない場合はこの画面は飛ばされて、先に進んでいると思われるので、 次の手順に進んで下さい。

ノート: Lubuntu も似たような画面になります。同様に一番上の項目をカーソルキーで選択し [Enter] キーを押して次に進んで下さい。

ノート: UEFI 経由で起動すると次のような画面になります。 一番上の Try Ubuntu(Lubuntu) without installing[↑] [↓] で選択して [Enter] キーを押してください。

U7.

Lubuntu の場合はリンク先へ進んで下さい

U8.

ようこそ(インストール開始)画面の操作

USB メモリにインストールする Ubuntu の種類によって、 次の様な Try Ubuntu (Ubuntu を試す)、 Install Ubuntu (Ubuntu をインストールする) を選択する画面が現れます。左側の言語選択から下の方にある 日本語 をクリックして、Ubuntu を試す をクリックしてください。 この画面が現れず、デスクトップ画面表示まで進む場合も有ります。

ノート: 英語キーボードを使用している場合は、 言語は英語のまま進めてください。英語を選択した場合は、この手順書の意味を適宜読み替えて操作してください。

問題と解決: 環境によっては次の様にログイン画面になる場合が有ります。 Ubuntu のバージョンによっては Username: ubuntu、 Password: 入力なし でデスクトップ画面になります。 それでもログインできない場合は、ログインできる様に修復作業を始めてください

問題と解決: 環境によっては画面が真っ暗になるか、 映像信号が途絶えてしまう場合が有ります。画面が出る様に起動パラメータを修正し、 再起動して下さい。

U9.

Terminal ウインドウを開き、そこから startscankey を起動します

デスクトップ画面が利用可能になります。初めに次の様なショートカット早見表が現れる場合があります。早見表は特に気にせず操作を進めてください。

左上の Ubuntu アイコン をクリックします。テキスト入力部分に term と入力します。アイコンがいくつか現れるので "Terminal" と書かれたアイコンをクリックしてください。

問題と解決: term と入力している最中の応答が悪く、1 文字の入力に対して 0.5 秒以上後に反応する場合は、古い Ubuntu を利用してください。14.04.x よりは 12.04.x の方が早いです。古い方が検索速度が 1.5 ~ 2 倍以上早い場合が有ります。

次の画面の様な Terminal ウインドウ が開きます。少し後で操作します。

"Home Folder" アイコンをクリックします。このアイコンは「引き出し」を模した絵または「書類フォルダー」を模した絵になっています。ファイル一覧ウインドウが開きます。

開いたウインドウの左側欄に有る"File System" (または "Computer") をクリックします。

"cdrom" フォルダーをダブル・クリックします。

"startscankey"ファイルを Terminal ウインドウ へドラッグ&ドロップします。

Terminal ウインドウ 内にドロップすると、次の様にキーボードから入力した様に文字列が表示されます。Terminal ウインドウ をクリックして [Enter] キーを押してください。 scankeylx が起動します。
次は Terminal ウインドウ に入力する文字列です。ドラッグ & ドロップを使わない場合はコピー & ペーストの雛型として利用できます。

'/cdrom/startscankey'


U10.

検索対象のドライブを選び検索を始めます

scankeylx ウインドウDrive をクリックして、検索したいドライブを選択します。 OK ボタンをクリックして検索を開始します。

U11.

検索終了まで待ちます。終了したら scankeylx を閉じます

検索を終了すると進捗表示が 100.00% になるので Exit ボタンをクリックして scankeylx を終了します。

本当に終了するかダイアログが表示されるので、 Yes をクリックして終了します。

U11(補).

[中断方法] 検索途中で中断する

Cancel ボタンを押してください。ダイアログが現れるので、中断する場合は Yes 、続行する場合は No をクリックしてください。

U12.

検索結果を整理する操作です。reportlog を起動します。必須ではありませんが結果が読みやすくなります

ノート: 解析済みの古いログファイルはコピーを作ったら削除しておいた方が解析が早くなります。

scankeylx タイトルが付いたファイル一覧ウインドウを見つけてクリックしてください。最前面に表示されます。 "reportlog" アイコンをダブルクリックしてください。

ノート: scankeylx タイトルがついたファイル一覧ウインドウが見つからない場合は、下に示す様な画面左側のフォルダーアイコンを見つけて、クリックします。
または
ファイル一覧ウインドウが現れるので、ウインドウ左欄にある File System (または Computer ) → ウインドウ中心欄の中から "tmp" フォルダ → "scankeylx" フォルダの順にクリックまたはダブル・クリックで開いて下さい。

問題と解決: 次の様なテキストエディタウインドウが開いてしまう場合は、Terminal ウインドウ を開いて reportlog を起動します

次の様に実行方法を選択するダイアログが表示されます。 Run in Terminal をクリックしてください。

ほんの一瞬程度から 1 時間程度掛かります。処理が始まると、次の様な進捗状況を表示するウインドウが現れます。(処理時間が短い場合は黒い影の様な表示が一瞬現れるだけです)。自動的にウインドウは消えます。解析結果各ファイルの詳細はこのリンク先を参照してください

解析結果は scan_xxxxxx_yyyyyy.dir に格納されます。解析結果各ファイルの詳細はこのリンク先を参照してください

U13.

Ubuntu をシャットダウンします

画面の右上隅の 歯車マークShut down... の順にクリックします。

次に示すいずれかに近いダイアログが表示されます。Shut down 電源 On/Off ボタンをクリックして Ubuntu を終了します。終了操作をした後、DVD-R (光学メディア)から起動した場合はこのリンク先の手順に進んでください。


U14.

電源が自動的に切れます。検索結果は USB メモリに格納されています。起動に使用した USB メモリを抜いて下さい

問題と解決: 電源が自動的に切れない場合は、30 秒ほど待ってみてから、電源ボタン長押しなどをして電源を強制的に切ってください。


実行環境

実行環境はおおよその目安は Windows XP Professional 以降の Windows が動作する条件と一致します。 全ての条件を満たせない環境でも CPU とメモリだけは条件を満たすようにしてください。

項目 必要能力の説明
PC 仕様

PC/AT 互換機 (目安として Windows XP かそれ以降の OS に対応している)


PC/AT 互換機で Windows XP 以降の Windows に対応している PC 構成であれば Lubuntu 16.04, 14.04, 12.04 i386 または Ubuntu 12.04 14.04 i386 を実行できると考えられます。 よく使われていた CPU、チップセットの PC の方がより望ましいと思われます。
Ubuntu を起動できない場合は、特殊な拡張カードを出来るだけ外してみてください。

実行 OS

Lubuntu または Ubuntu を USB メモリ か DVD-R、CD-R の様な光学メディアにインストールしたもの


Pentium 4 や Athlon XP を含みより古いプロセッサで実行する場合は Lubuntu 12.04 desktop 32bit を推奨します。 次の表は実行可能な Linux ディストリビューションの範囲です。各項目の組み合わせで動作します。

項目 範囲
ディストリビューション Ubuntu, Lubuntu
エディション Desktop
バージョン 10.04, 12.04, 16.04
CPU 語長 32bit, 64bit
検索対象 OS

Windows 95, 95 の各種 OSR, 98, 98SE, Me, NT 4.0, 2000, Xp, Vista, 7, 8, 8.1, 10


Windows 2000 Server, Windows XP MCE キーを検索できる様です。

プロセッサ

Pentium III または Athlon 800MHz 以上 の能力をもつプロセッサを推奨


最低でも Pentium Pro と互換性があるプロセッサ(代表例として Pentium II, 初代 Celeron 以降) を 使用してください。Ububtu の仕様に由来します。

注意: VIA C3, C7 プロセッサは動作対象外とします。

次の表は HDD の外周部を検索していて、キーと思われるパターンが 10 秒に 1 個程度見つかる程度の状況における検索速度の目安です。HDD の転送能力、チップセット、拡張カード(HDD, VGA)、バスの能力に依存してこれより遅くなる場合があります。HDD の内周部の読み出し速度は外周部に比べて半分以下になる場合も有ります。

プロセッサ検索速度(Mbytes/sec)
AMD Athlon XP 2500+85 - 90
Intel Pentium 4 2.0GHz 65 - 70
メモリ

512 MiByte 以上


メモリ量が 1 GiByte 未満かつビデオメモリとメインメモリを共有している場合、ビデオメモリに配分するメモリ量を減らしてください。可能であれば BIOS セットアップメニューでビデオメモリ量を調整してください。512 MiByte 未満の場合、検索が出来なくなります。

画面解像度

Ubuntu, Lubuntu で対応し、1024x768 65536 色以上


おおよそ Windows Xp 向けに作られた 古い PC の場合 Lubuntu 12.04 32bit の方が上手く動作します。 3D アクセラレータ機能の有無、サポートレベルは不問です。

検索対象ドライブ

パラレル ATA, シリアル ATA, SCSI, USB 接続のハードディスク


PATA(IDE), SATA 接続であれば普通に検索できるはずです。 Linux で対応していないコントローラーでは検索できませんが、希少だと思われます。UBS 3.0 (Super Speed) 接続のハードディスクを検索したい場合は、なるべく新しい Ubuntu 16.04 を使用してください。

注意: 暗号化されているディスクは検索できません。

USB ポート

「USB 1.1/2.0/3.0 何れかの仕様であること」、できれば「BIOS(UEFI) 設定で USB メモリ起動ができること」


BIOS 設定で USB メモリのことを USB HDD と表現している場合も有ります。安定性を重視し、 なるべく USB 1.1(Full Speed)/2.0(High Speed) ポートを使用してください。 USB 3.0 仕様の Super Speed の早さは必須ではありません。

光学ドライブ

USB メモリで起動できない場合の代りの手段として、DVD または CD メディアより起動できること


USB メモリから PC を起動できない場合、 DVD または CD メディアを読み取り、起動できる光学ドライブが必要になります。 PC に内蔵している必要はありません。USB 接続の光学ドライブから起動できる構成でも利用可能です。 読み取り可能なメディアにより使用する Ubuntu, Lubuntu を選んでください。

読み取り可能なメディアUbuntu, Lubuntu リリース
CD Lubuntu 12.04 を推奨します。または Ubuntu 12.04.x より古い版を使用して下さい。
DVD Ubuntu 12.04.x, 14.04.x, 16.04 を利用できます。
マウス

最低限 2 ボタンの PS2 マウス


3 ボタン(ホイールの部分がボタンになっているものも含みます)あるとさらに使いやすくなります。 PS2/USB どちらでも利用可能です。

ネットワーク

有線 LAN 接続 または 無線 LAN 接続


必須ではありません。「Ubuntu を試用」できない場合に、追加ソフトウエアをインストールする時に使用します。イーサーネットケーブルを使用した有線 LAN 接続をお勧めします。オンボード(PC の背面や側面の接続端子)に接続する形態をお勧めします。USB-Ether 経由や無線 LAN 接続の場合、接続設定が難しい場合が有ります。

Ubuntu, Lubuntu リリースと scankeylx 動作状況

scankeylx は Ubuntu, Lubuntu で動作します。おおよその目安として Windows 7 ~ 10 のいずれかに対応している PC で scankeylx を使うのであれば Ubuntu 16.04 または Lubuntu 16.04 を使ってください。Lubuntu の方が 高速に動作します。32bit, 64bit どちらの版を使うのか良く分からなければ 32bit 版を使ってください。 搭載メモリが 4Gibyte を超える、または 64bit 版の Windows が動作していたと分っている場合は、 64bit 版の Ubuntu または Lubuntu を使用して下さい。

Ubuntu リリースと scankeylx 動作状況

Ubuntu 16.04.x または 14.04.x を USB memory boot で使用することを推奨します。 次の表は手元で確認した Ubuntu の動作状況です。

Ubuntu Release推奨度詳細
10.04 desktop 推奨しません。scankeylx 実行途中で強制終了してしまう現象を確認しています。 Socket7 インターフェースの Pentium、あるいは、これより古い CPU を搭載している古い PC で使用する場合に使ってください。 操作手順は省略します。

ノート: Ubuntu 10.04 はプロセッサに PAE 機能が無くても起動する Linux です。 PAE 機能は Pentium Pro より導入されました。

12.04.1 日本語 remix desktop

12.04 の初版のままなので 2012/04 以降の新しい PC では起動できないか、起動しても完全に動作しない場合があります。

ノート: 論理プロセッサ数が 1 個の PC で使用する場合は Ubuntu 12.04.x を使うことをお勧めします。Ubuntu 14.04.x を使用すると操作性が悪く、検索速度も遅くなってしまう場合が有ります。

12.04.5 desktop (英語版) 12.04.1 より改良されています。日本語 remix より問題が出にくくなっています。
14.04 日本語 remix desktop 版は少し古いですが、14.04.3 に比べて問題が少ないです。
14.04.2 desktop (英語版) もし入手できるならこちらを使ってください。
14.04.3 desktop (英語版) 追加手順が必要になることが有ります。Live mode(インストールせずに使用する機能)で起動すると、ログイン画面になってしまいデスクトップを使用できない問題が見つかっています。
15.04 desktop (英語版) 追加手順が必要になることが有ります。Live mode (インストールせずに使用する機能)で起動すると、ログイン画面になってしまいデスクトップを使用できない問題が見つかっています。
16.04.1 desktop (英語版) Windows 7 ~ 10 のいずれかに対応している PC であれば問題なく動作するはずです。 負荷が高めなので検索速度を重視するのであれば Lubuntu を使用して下さい。

Lubuntu リリースと scankeylx 動作状況

Lubuntu は CPU 負荷が低い Linux 環境です。Windows Xp, Vista を含め、これより古い Windows のいずれかに対応している PC で検索を行うのであれば Lubuntu 12.04 32bit 版を USB memory または光学媒体に書き込んで使用することを推奨します。

Lubuntu Release 推奨度 詳細
10.04 desktop 推奨しません。scankeylx 実行途中で強制終了してしまう現象を確認しています。 Socket7 インターフェースの Pentium、あるいは、これより古い CPU を搭載している古い PC で使用する場合に使ってください。 操作手順は省略します。

ノート: Ubuntu 10.04 はプロセッサに PAE 機能が無くても起動する Linux です。 PAE 機能は Pentium Pro より導入されました。

12.04 desktop

Windows Xp, Vista 対応 PC で検索するのに適しています。 プロセッサが Pentium III または 初代の Athlon プロセッサならば、12.04 リリースが最適です。 メモリが 512MiByte 有れば十分に動作します。

14.04 desktop

Lubuntu 16.04 で問題を起こす場合に試してください。 多くの Windows 7 対応 PC で検索するのに適しています。

16.04 desktop

Windows 7 ~ 10 対応 PC であればほぼ問題なく動作します。

USB メモリを用意する

このページでは USB フラッシュ・メモリ・ドライブ(下の画像では USB メモリ)、 USB カード・リーダーを総称して USB メモリと呼ぶことにします。 下の写真に写っている様な機器(セット)です。どれか 1 つ(USB カードリーダーの場合はカードリーダーとメモリカード)を用意してください。 カードリーダーを利用する場合、挿して使うメモリカードは認識すれば何でも構いません。

USB フラッシュ・メモリ・ドライブドライブを推奨します。容量は 2Gbyte 以上必要です。

カードリーダーはなるべく 1 スロット型を使用してください。 あるいは複数スロットのうちの一つが認識される製品を推奨します。

次の様な複数スロットの USB カード・リーダーを使う場合、挿し込むカードは 1 つにして下さい。 複数スロットのカード・リーダーから起動できないケースは確認できていませんが、 PC によっては起動できない可能性も有ります。 起動に必要な設定・操作を確認し、問題が発生した場合は各々で対応をお願いします。

ノート: USB3.0 (Super Speed) 対応 USB メモリも使用できます。 ただし、USB 3.0 対応メモリは従来の USB 2.0 (High Speed) ポートに接続して使用することをお勧めします。 PC の BIOS や Ubuntu (Linux) の対応が十分ではない可能性があり、 USB 3.0 ポートに接続すると Ubuntu が起動しても不安定で止まってしまう可能性があります。 USB 2.0 ポートに接続すると Ubuntu 起動時間に差が出ますが、scankeylx の検索時間は大きく変わりません。 安定性を重視し USB 2.0 (High Speed) 接続で使用してください。


scankeylx 展開内容

ダウンロードした scankeylx_r1704b.zip は Ubuntu をインストールした USB メモリに展開して使用します。 インストーラーは特にありません。USB メモリに展開するには、USB メモリのドライブ直下 (例えば E:\, F:\, G:\ などのルートフォルダ)にして下さい。一時的に展開する場合は Windows フォルダや重要なファイルがある場所以外ならどこでも良いです。 一番使い慣れたツールで展開して下さい。Windows Xp, Vista, 7, 8, 10 ならば zip ファイルを開ける(展開できる)ようになっています。不要になったなら展開したファイルを全て削除して下さい。

展開すると次のファイルが現れます。太字のファイルは必須ファイルです。 ソースコードを除き、展開して現れた .tar.gz, .zip ファイルをさらに展開する必要は有りません。

ファイル名 実行に必要 説明
sklxh フォルダー内全て 不要 scankeylx を補足説明するファイルを含んでいます。実行には必要ありません。ファイル数が多いので特に説明しません。
sklxi フォルダー内全て 不要 scankeylx.htm で使用しているイメージファイルです。 実行には必要ありません。ファイル数が多いので特に説明しません。
fixboot 必要 Ubuntu を起動たら画面が出なくなってしまった場合に使用する修復プログラムです。 Ubuntu(Lubuntu) 上で実行します。
fixboot-i686 必要 Ubuntu を起動たら画面が出なくなってしまった場合に使用する修復プログラムです。 32bit Ubuntu(Lubuntu) 上で実行します。
fixboot-x86_64 必要 Ubuntu を起動たら画面が出なくなってしまった場合に使用する修復プログラムです。 64bit Ubuntu(Lubuntu) 上で実行します。
fixboot.exe 必要 Ubuntu を起動たら画面が出なくなってしまった場合に使用する修復プログラムです。 Ubuntu(Lubuntu) 上で fixboot を実行できない場合はこちらの Windows 版を使用します。
metacity.sh 必要 "Try ubuntu" を選択して起動しても「試用モード」で起動せず、 ログイン画面」になってしまった場合の修正プログラムです。
scankeylx.htm 不要 このファイルです。実行には必要ありません。
scankeylx.tar.gz 必要 scankeylx の実行ファイルです。 このファイルを展開する必要はありません。 実行ファイル scankeylx と他に必要なファイルが圧縮されて格納されています。
scankeylx_src_r1704b.tar.gz 不要 scankeylx のソースファイルです。 このファイルを展開する必要はありません。
startscankey 必要 scankeylx を起動するためのファイルです。 内容はシェルスクリプトです。

検索設定の詳細

変更する必要性は殆ど有りませんが、検索の方法や、結果の形式を設定することが出来ます。 「検索途中で先に進まない」、「検索結果のテキストを UNIX 改行形式にしたい」と言う場合に参考にしてみてください。 各項目に () 番号を振ってあるので、それぞれ対応する説明を見てください。

scankeylx のメイン画面
項目 変更必要性 内容
(1) Drive 有り プルダウンして (▼を押して) 検索対象のハードディスクを選んでください。

(2) ->
(3) [Browse]

なし 保存先ファイルのパス名を指定して下さい。起動直後は startscankey が存在する場所が保存先です。どうしても保存先を変更したいときだけ変更して下さい。
(4) DMA Enable なし

DMA を有効にする場合はチェックを付けてください。 付け忘れても、検索開始前に DMA を使用するかどうか聞きます。

ノート: チェックマークの操作が出来なくなっていても問題ありません。 DMA が有効かどうかは自動的に決まるか固定されている場合は操作ができません。

(5) Windows (CR/LF) なし 検索結果を保存する形式を選択します。行末を Windows に適合した CR, LF の 2 コードで表現します。普通は Windows (CR/LF)を選択してください。
(6) UNIX (LF) なし 検索結果を保存する形式を選択します。行末を UNIX に適合した LF 1 コードで表現します。 普通は選択しないで下さい。
(7) Auto Skip Factor なし 読み取りエラーがあった場合、読み取りを飛ばすセクタ数の上限を自動で決めるかどうか を指定します。普段はチェックを付けた状態にします。自動の場合は飛ばすセクタ数の上限が 1000 以上になる場合もあります。しかし、 実際はエラーが起きたら徐々に飛ばし量を増やすので、40 セクタ程度を飛ばすだけで済む場合が殆どです。
(8) Skip Factor なし Auto Skip Factor のチェックを外して入力してください。読み取りエラー発生時に読み飛ばすセクタ数の上限を指定します。
(9) Drive Identification 不可 製造元、型番、シリアル番号またはファームウエアバージョンなどが表示されます。表示専用です。 パラレル ATA、シリアル ATA 、SCSI 接続のハードディスクと一部の USB ストレージに対応しています。
(10) By 1000 bytes 不可 1000 バイト単位で数えたドライブ容量が表示されます。表示専用です。 ドライブのラベルまたは購入時に示された容量に近い値が表示されます。
(11) By 1024 bytes 不可 1024 バイト単位で数えたドライブ容量が表示されます。表示専用です。 Windows のプロパティ表示に近い値が表示されます。
(12) Running Monitor 不可 検索の進捗状況を表示します。左から 検索済みセクタ数/全セクタ数、(進捗率%)、 バッファ読み溜め数:バッファ空き数、 1分間の平均検索速度 bytes/sec、3分間の平均検索速度、今までの平均検索速度を示します。 表示専用です。
(13) □ (S) 不可 アクセスのスムーズ度合いを示します。
文字 意味
S 検索をしていない状態です。
G 巡航速度で検索をしています。
黄(黄緑) Y アクセス速度が若干低下しています。 他のアプリケーションに処理を奪われているか、 ディスクに軽微な読み取り障害が有ると思われます。
O アクセス速度が低下しています。 ディスクに回復に困難を要する読み取り障害が有ると思われます。
R アクセス速度が異常に低下しています。 ディスクに致命的な読み取り障害が有ると思われます。
(14) [OK] - 検索を開始するボタンです。
(15) [Cancel] - 検索開始前と検索終了後の状態で押すと scankeylx を終了します。検索中は検索を中止します。

質問と回答

検索対象のディスクに関する問題

Q. フォーマットしてしまった。
A.

ローレベルフォーマットやデーター消去ツールによる消去をしていなければ見つかる可能性があります。 Windows が提供しているツールでフォーマットした場合は場合、読み出しが正常か検査しているだけの場合か多いようです。

Q. 途中までインストール/リカバリした後で見つかるの?
A.

見つかる可能性はかなり低くなっています。 しかし、稀に過去にインストールしていた Windows のキーが見つかることもあります。 工場出荷時に使用していた仮キーが見つかる場合もあるので注意してください。

Q. RAID ドライブを検索したい。
A.

RAID ドライブは未検証です。期待通り動作するか不明です。

検索結果の問題

Q. どれが本当のキーだか分からない。
A.

reportlog を使ってある程度整理してみてください。 Windows Vista, 7, 8 向けに実装した検索処理によってキーを見分けやすくなっています。 結果の一部に Ultimate, Retail 等のエディションや販売形態を意味する文字列が付く場合が多くなりました。以下のような形式になります。

DigitalProductId4=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX 12345-12345-123-123456-12-1234-1234.1234-1234567 01234567-89ab-cdef-0123-456789abcdef Ultimate X12-12345 Retail Retail 12345-123-1234567-12345 (data)
DigitalProductId=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX 12345-OEM-1234567-12345 英文または単語の羅列 (data)

Windows Vista, 7, 8 以外の場合は見分けるのが難しくなります。発見されるキーは Office、開発環境などの アプリケーションやコンポーネントも含まれます。この中にはインストールキーを必要としないにも関わらず、 内部的に隠れたキーが存在するものがあります。稀ですが過去にインストールしていたか工場で調整用に使われた Windows のキーも見つかります。誤認識した結果も含まれます。

発見したキーの種類によっては「ヘルプ」→「バージョン情報」や「コントロールパネル」から表示されるプロダクト ID がヒントとして付く場合があります。この場合途中の 3 桁部分 -xxx- が製品を表すものになっていて "OEM" などの場合は、OEM 版 Windows の可能性があります。

過去に scankeylx で検索した結果を再検索して発見している場合もあります。この場合 ProductId== や ProductKey== の様に等号 = が複数続く場合があります。

ノート: 古い scankeylx は処理が不十分なため DigitalProductId=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX YYYYY-YYYYY-YYYYY-YYYYY-YYYYY の様に 1 行 2 連で出力する事が有ります。この場合は後側のキーが過去に発見したキーの可能性があります。

Q. 行の一番最後に (win8-10) が付いているキーとその直前のキーの関係は?
A.

例えば次の様にドライブ上の同じ個所から、キーを復号して検索結果として保存する場合が有ります。 1 行目は Windows 7 まで対応した復号方法で得られたキーです。2 行目は Windows 8 から新しくなった復号方法で得られたキーです。 検索しようとする Windows のライセンスキーは Windows Version に依存して変わります。必要な方を選んでください。

DigitalProductId=BBH8V-R93HK-R266Q-9CT93-XXXXX this key sample is not valid
DigitalProductId=J799X-QJ2R3-BRBTY-42DTK-YYYYY this key sample is not valid (win8-10)

Q. 入力した覚えが無いキーが表示され、インストールの時にも受理されるのはなぜ?
A.

いくつかの場合が考えられます。

  • 工場での作業性向上を目的としたインストールキー(特定メーカー、機種でしか使えない)
  • Windows Vista, 7 等でキー入力を省略または間違えた場合、 内部で補助的に使われるキー(期間限定のライセンスであり、恐らくキー省略時と比べ同じかより短期間のライセンスでしかない)
  • アップグレードをした際に自動的に入力されたキー(このキーはアップグレードにしか使えない)
Q. 発見したプロダクト ID の下 5 桁(01234-567-0123456-XXXXX の X 部分)が稼働中に控えた数値と一致しない。
A. 何らかの操作または処理によって再計算されたと考えられます。下 5 桁の部分はインストールする度に変化します。 scankeylx でプロダクト ID と組で検索した 25 桁のプロダクトキーの方は下 5 桁の変化とは無関係に復号されたものです。
Q. 水色で表示される検索結果の意味は?
A. 既出なので記録を省略する検索結果です。画面に表示されますが、USB メモリに保存されません。既出の検索結果を記憶する数は制限されています。制限一杯になると、入れ替えを行います。したがって、USB メモリに同じ結果が保存されることもあります。
Q. 検索結果はどれくらいの大きさになるの?
A. 数 10Kbyte から 20MByte 程度の範囲です。 これだけ範囲が広い理由は、ディスクの使用状況に応じて大きく変化するためです。デフラグを頻繁にした場合はより多くの検索結果が出力されます。以前に検索した結果が残っていれば、再検索され、検索結果が大きくなります。
稀に 2Gbyte を超える場合が有ります。この場合検索結果を格納するファイル名に _001, _002, ... が付加され、継続して結果を保存します。さらに USB メモリが溢れた場合、Linux OS が強制終了する事が有ります。
Q. 検索結果か毎回違うようだ。
A. 検索結果が毎回違う事が起きます。検索漏れは起きません。 検索アルゴリズムを簡略化したためにおきます。scankeylx はディスク全体を細分化して検索しています。分割した境界付近で検索漏れが起きないように、境界付近は重複して検索します。境界付近でキーが発見された場合は、同じキーが複数回見つかります。分割のされ方は利用可能メモリ量によって左右され、起動時のわずかな状態の差により変化します。
Q. 検索を途中で中止しても reportlog で検索結果を分析できるのか?
A.

出来ます。分析する範囲は中止するまでに検索した内容に限定されます。

Q. OK ボタンを押して再検索してしまった。前の検索結果は残っているの?
A.

残っています。保存先ファイルに再検索結果を追記しています。再検索で追記するまでの内容は変化しません。

Q. Windows Vista の Anytime Upgrade でアップグレードした時に使われたプロダクトキーは見つかるの?
A.

見つかるようです。Anytime Upgrade でも内部でプロダクトキーを使用していると考えられます。

アップグレードした後、プロダクト IDを控えておき、scankeylx で発見した プロダクトキーに付加された プロダクト ID と照合してみてください。 ただし、プロダクト ID の下 5 桁は一致しないかもしれません。発見したキーはアップグレードする場合に使えます。Windows Anytime Upgrade インストール メディアを使用してアップグレードする場合に有効なキーとして扱われるようです。

ノート: 発見したキーでクリーンインストールはできません。

Q. r1704b 版は以前の scankeylx と比べて検索結果ファイルが小さくなる。検索漏れが起きているのか?
A.

小さくなります。重複検出機能を強化しました。

実行環境の問題

Q. USB メモリ がありません。携帯プレイヤー、デジタルカメラ、スマートホンを使いたい。
A.

携帯プレイヤー、デジタルカメラ、スマートホンを USB メモリ代わりに使わないで下さい。 Linux(Ubuntu) と接続した場合の動作を十分に検証していないと考えられます。 保存されている音楽や画像が失われたり、コンテンツの使用権が失効してしまう可能性が有ります。 特に Windows ではアクセスできなかった隠しパーティションをアクセスできてしまう問題があります。 隠しパーティションに格納された重要なソフトや管理情報を破壊する可能性があります。

Q. USB メモリがありません。USB ハードディスクを使いたい。
A.

USB ハードディスクを使う場合 FAT32 でフォーマットする必要が有ります。NTFS, exFAT でフォーマットした場合は、認識されないか保存されているファイルを壊してしまう可能性も有ります。

注意: フォーマット形式を FAT32 へ「変換する」ことはできません。フォーマットをすると記録されているファイルは失われます。

注意: 録画機器の拡張ドライブとして使用しているハードディスクドライブは使用しないでください。Ubuntu(Linux) に接続した場合、保存した内容が消えてしまったり、正常に読めなくなってしまう可能性が有ります。

Q. Universal USB Installer が USB メモリを認識しません。
A.

Show All Drives チェックマークを付けてください。全てのドライブが表示されます。 ドライブを選択するときは、表示されるドライブ名と容量が USB メモリと一致するか確認してくたせさぃ。

注意: ドライブ選択を誤るとシステムドライブを消去する危険性もあります。操作が正しいか確信が持てない場合は、 認識しない USB メモリは使用せず、認識する USB メモリを使ってください。 32Gbyte 以下の USB メモリならば認識すると考えられます。

Q. Ubuntu が32Gibyte を超える大容量 USB メモリ(ハードディスク)を認識しない。
A.

大容量の USB メモリは NTFS, exFAT でフォーマットされています。 Ubuntu ではこれらのフォーマットを認識できないか、認識できたとしても正常にアクセスできない可能性が有ります。 特殊なツールで FAT32 でフォーマットする必要が有ります。

注意: フォーマット形式を FAT32 へ「変換する」ことはできません。フォーマットをすると記録されているファイルは失われます。

Q. USB メモリから Ubuntu を起動できません。光学ドライブから起動した Ubuntu で動作しますか?
A.

光学ドライブから起動した Ubuntu で実行する手順を参照してください。

Q. USB メモリのお勧めは?
A. 2Gbyte 以上でフラッシュメモリを使用したサム(親指)型 USB メモリをお勧めします。手頃な値段で販売されている汎用的な製品が使えます。 高速品を使う必要はありません。
Q. Ubuntu, Lubuntu 以外の Linux で使用できないの?
A. Ubuntu 派生系の Linux ならば動作する可能性があります。 手順を変更して Linux Mint で実行できることを確認しています。 実験的に Raspberry Pi 3 でも動作する様にしてあります。 Raspberry Pi 3 で使う を参考にしてください。
Q. 実行ファイル、その他のファイルはインストールされるの?
A.

USB メモリ、DVD-R (光学メディア) から起動した場合はインストールされません。後から追加したパッケージは USB メモリ上に保存されるか、主記憶上に一時的に配置されます。電源を切ったりリブートすれば検索対象の PC から消えます。

注意: PC にインストール済みの Linux を起動して scankeylx を使った場合は、アプリケーションアイコンを /usr/share/pixmaps/scankeylx.png としてインストールします。

Q. メモリが足りない、USB メモリをスワップスペースとして使用したい。
A. USB メモリをスワップスペースとして使うと動作が不安定になります。最低でも 512Mi byte のメインメモリを実装して使用してください。
Q. CPU を多くしたり、ハイパースレッドを有効にすると早くなるの?
A.

検検索結果が多く出力される場合は早くなります。scankeylx の構造はマルチスレッドです。検索結果が 10 秒に 1 個程度の割合未満で疎らに出力されている状況では常時高負荷となるスレッドは 1 つだけです。出力が疎らな状況の検索速度は CPU 処理速度、または 検索対象ドライブのアクセス速度の遅い方によって決まります。 1, 2, 4 CPU 環境で動作を確認しています。

scankeylx の表示の問題

Q. Ubuntu が立ち上がっているようだが、画面が表示されない、画面が流れる。
A.

次のいずれかの方法を試してください。改善が期待できる順で並べてあります。お手数をお掛けします。

  • Lubuntu を使ってください。12.04 版は多くの環境で良好に動作します。 高度なグラフィックス機能が無くても動作する可能性があります。
  • ネットワーク接続が可能であれば Ubuntu を試す(Try ubuntu) で 画面が写らなくなる場合の修復方法 を試してください。
  • Ubuntu のリリース年と検索をしようとしている PC の製造年を比べ、差が小さくなる Ubuntu を使用してみてください。 Ubuntu リリースが 12.04 であれば 前 2 文字は西暦の 下 2 桁です。2012 年 4 月のリリースと言うことになります。 LTS と呼ばれる長期サポート版は 10.04, 12.04, 14.04, 16.04 です。これらは改良が加え続けられています。 枝番が 12.04.3 の様に付いていて、新しくなるほど番号が大きくなります。 最新の PC に対応する改良が加わる代りに、古い PC に対応できなくなる問題を含む場合が有ります。

Q. 大容量 (137 Gbyte) 以上のドライブだが、異常に少ない容量に見える。
A. IDE コントローラーまたはドライバが Big Dirve に対応していないと思われます。対応したカードを使用するか別の PC で試して下さい。
Q. なぜ違うドライブ容量の表示があるの?
A. 大きいほうがハードディスクのラベルまたは販売時に示された容量、小さいほうが Windows が報告した容量とほぼ一致すると考えてください。両方で単位が違います。
Q. インジケーターが黄色または赤くなる。
A. HDD のアクセス速度が異常に遅い場合に起きます。CPU が要求スペックより遅い、検索を開始した直後ブラウザを立ち上げるなどの別の操作をはじめた、などの場合は正常であっても起きます。破損した/破損しかかっているセクタを読み取ろうとした場合は、黄色または赤くなります。
Q. Browse ボタンが赤くなった。
A. 検索結果保存先の空きがなくなった状態です。検索終了まで待ち、Browse ボタンを押して保存先を設定しなおしてください。設定しなおした直後に滞留していた検索結果を書き出します。 より容量が多い USB ストレージを使用してください。ただし、32Gbyte 以下にしてください。FAT(FAT32) でフォーマットする必要が有ります。

実行中の問題

Q. Ubuntu のデスクトップの反応が非常に悪い。
A.

Lubuntu を使ってください。Ubuntu 14.04 以降負荷が高くなる傾向があります。

Q. 実行するととても反応が悪くなる。
A.

DMA Enable にチェックを付けてください。scankeylx は DMA Enable によって DMA を使用する設定ができます。DMA を使用せずに検索を開始しようとした場合、 ダイアログで使用を催促します。

Q. Cancel/Close ボタンが効きにくい。
A. 大体 10 秒以内に効くように設計しています。しかし、破損した/破損しかかっているセクタを読み取ろうとしている最中は、 数分間程度効かない場合があります。
Q. Scankeylx 実行中にログアウトしようとしたけどできない。
A.

申し訳ないですが、仕様の問題とします。
ログアウトしようとするとウインドウを閉じてよいかウインドウを管理しているソフトウエアから問い合わせが scankeylx に来るのですが、色々と都合があって「まった」を掛けています。

Q. 結果出力ウインドウを消せない(閉じても復活する)。
A. scankeylx が動作している間は消しても復活します。
Q. 検索対象ドライブに対して書き込みすることはあるの?
A.

以下の場合、書き込みが行われる可能性があります。 普通に scankeylx を使用するのであれば書き込みは行われません。

  • 検索対象が ハード・ディスク・ドライブ、または USB メモリでルートフォルダに scankeylx を格納している。
  • Linux で認識可能な ext2, ext3, ext4 などのパーティションがあるハードディスクを使用している場合、auto mount が行われ、ファイルに影響しない管理情報を整合してしまう可能性があります。
  • 過去または直前まで Solaris をインストールして使用していた。

    注意: Solaris をインストールしたドライブがある場合、 Ubuntu を含め Linux を使わないでください。Solaris で使用しているファイルを壊す可能性があります。

  • 検索結果格納先に検索対象ドライブを指定した場合(特に防御していません)
  • 検索対象ドライブのアイコンを開いた場合
Q. 突然検索が終了してしまった。
A. 検索中に接触不良が起きたり、コントローラーが不調になり、 ドライブが切断されてしまった場合は検索が中断されます。USB 接続の場合に起きやすい現象です。 ログの最後に "Lost device or file, maybe disconnect or driver failure." というメッセージが記録されます。
Q. ドライブの選択が出来ず、 OK ボタンが押せなくなった。
A. 予期しないエラーが発生し、操作がロックされました。 scankeylx をいったん終了し、再び startscankey から起動してください。
Q. 複数同時に起動できるの?
A. 起動できますが、推奨しません。
最悪 Ubuntu が停止してしまう可能性があります。後に起動した scankeylx ほど確保できるメモリ容量が少なくなり、実用的な検索速度が出なくなります。

各種設定について

Q. DMA Enable にチェックを付ける場合とつけない場合の差は?
A.

DMA Enable にチェックを付けると DMA が使用され、多くの場合は検索速度が向上します。
HDD の読み取りが不安定であったり、認識結果がおかしいと思われる場合は DMA Enable のチェックを外し、さらに OK ボタンを押した後、DMA を使用するかどうか聞く質問 "Do you want to Enable DMA?" に対し No ボタンを押して検索を開始してください。

Q. DMA Enable にチェックを付けることができない。
A. デバイスドライバの仕様で DMA を使用するかどうか固定されているか、自動的に決まる様になっています。SATA 接続のハードディスク、USB 接続のハードディスクは DMA を強制的に使う様に動作しているはずです。
Q. Auto Skip Factor にチェックを付ける必要性がある場合は?
A. ディスクの読み取りエラーが発生し、エラーがある箇所近辺にキーが有ると思われる場合です。
Auto Skip Factor のチェックを外して Skip Factor になるべく小さい値 1-16 を指定してください。
Q. Windows (CR/LF) と UNIX (LF) のどちらを選択したらよいの?
A. 検索結果を Windows のエディタで見る場合は Windows (CR/LF)、Ubuntu (Linux) のエディタで見る場合は UNIX (LF) を選択してください。

ソースコードとコンパイル

Q. コンパイルで特に注意すべき点は?
A.

次に示す制限と現象があります。

  • 最適化レベルはプロジェクトで設定している以上に上げないでください。
  • 関数・手続き内の変数宣言順は好ましい最適化が掛かる様に調整されています。 ソースを修正すると最適化が良く働かずに実行速度が 2 ~ 3 割遅くなることがあります。
  • 代入した変数が使われない旨のヒントが出ます。リリース時点で動作に問題ないことを確認済みです。
  • ポインタを整数に変換している注意が出ます。リリース時点で動作に問題ないこと確認済みです。
Q. デバックを始めると出力ウインドウが現れない。
A. デバッカの中から実行すると出力ウィンドウが現れません。外部プロセスとして起動して、アタッチする方法を薦めます。起動初期からデバックを始める場合は、コマンドラインに -W 30 と指定して(30秒起動を遅らせる)起動を遅らせてください。
Q. scankeylx の OK ボタンが押せない。
A. 危険を承知した上で、実験用のドライブを用意してください。デバックを行うユーザーに対して実験用のドライブに対するアクセスを許可して下さい。未使用の SATA ポート、または USB 接続にて実験用のドライブを接続して /dev/sdd が実験用のドライブになったとして、super user でアクセス許可を chmod a+r /dev/sdd のようなコマンドライン操作で与えてください。

Free Pascal と Lazarus によるコンパイルについて

本ソフトウエアのソースコードは Free Pascal 3.0.0 と Lazarus 1.6.2 の組み合わせでコンパイル可能です。 追加のコンポーネントやライブラリは必要ありません。Lazarus をインストールできていれば統合開発環境にプロジェクト・ファイルを読み込ませてバイナリを構築できます。

開発環境を構築する

プロジェクトをコンパイルするために使った開発環境はディストリビューションによっては パッケージで提供していない場合が有ります。 Raspberry Pi 3 に Free Pascal 3.0.0 と Lazarus 1.6.2 をインストールする を参考に構築して下さい。

作業用ディレクトリを準備する

次の様にしてダウンロードした zip ファイルを展開し、作業ディレクトリ work_dir/scankeylx_src_r1704b を準備してください。

$ mkdir work_dir
$ cd work_dir
$ unzip down_loaded_directory/scankeylx_r1704b.zip
$ tar zxvf scankeylx_src_r1704b.tar.gz
$ cd scankeylx_src_r1704b
$ mv ../* ./
$ rm *.tar.gz fixboot.exe fixboot-*

プロジェクトファイル scankeylx.lpi に含まれる build mode

プロジェクトファイル scankeylx.lpi に含まれる build mode は次の表のとおりです。

Build mode Target CPU Binary file Bundle Description
default 作業環境と同じ scankeylx-default No 開発作業用
debug 作業環境と同じ scankeylx No 開発作業用
i386_default i386 (i386 アーキテクチャと互換性がある CPU) scankeylx-i386 No i386 (80386) と互換性がある CPU で実行するバイナリを構築します。 32bit x86 互換プロセッサ上で使用して下さい。動作確認をしていません。 Free Pascal, Lazarus の unit 群も併せて i386 上で動作する様に構築する必要があります。
i686_default i686 (Pentium Pro 以降の P6 アーキテクチャと互換性がある CPU) scankeylx-i686 Yes Ubuntu, Lubuntu の 32bit PC (i686) で実行するバイナリを構築します。 32bit x86 互換プロセッサ上で使用して下さい。
x86_64_default x86_64 (AMD64 アーキテクチャと互換性がある CPU) scankeylx-x86_64 Yes Ubuntu, Lubuntu の 64bit PC (amd64) で実行するバイナリを構築します。 AMD64 互換プロセッサ上で使用してください。
armv6_default ARMv6 architecture scankeylx-armv6 No ARM v6 architecture で実行するバイナリを構築します。Hard Float (ハードウエアによる浮動小数点計算)が有るプロセッサで実行する様に オプションを選んでいます。動作未確認です。
armv7_default ARMv7 architecture scankeylx-armv7 Yes ARM v7 architecture で実行するバイナリを構築します。Hard Float (ハードウエアによる浮動小数点計算)が有るプロセッサで実行する様に オプションを選んでいます。動作確認は Raspberry Pi3 で行っています。 その他の環境は動作未確認です。
上記以外 - - No デバッグや実験用途の build mode です。

lazarus の ProjectCompiler OptionsBuild modes を選択して構築するか、コマンドラインで次のようにして構築して下さい。

% lazbuild -B --build-mode=x86_64_default scankeylx.lpi

Windows ターゲットのバイナリを構築するための環境

Windows ターゲットのバイナリ fixboot を構築するための環境は次の通りです。

PackageVersion備考
Lazarus 0.9.22 beta fixboot をコンパイルするために必要です。 fixboot を Windows ターゲットとしてコンパイルできなくても、大きな不都合は有りません。 改廃が起きにくい標準的なライブラリを使用しています。 新しい版でもコンパイル可能だと思われます。
Free Pascal 2.4.0 上記の lazarus と組みになる Free Pascal Compiler とライブラリ一式です。

ビルドするプロジェクト

scankeylx.lpi と fixboot.lpi に含まれている次の Build mode で構築して下さい。 セルフ開発環境を整備する必要があります。 全て構築するには i686 (32bit PC), x86_64 (64bit PC), armv7 (Raspberry Pi3 などの ARMv7 アーキテクチャバイナリを実行可能な環境) が必要です。

Project Linux target
Build modes
Windows target
Build modes
scankeylx.lpi i686_default
x86_64_default
armv7_default
do not build
fixboot.lpi i686_default
x86_64_default
i686_win

再配布ファイルを作成する

mkdistzip.sh は再配布 zip ファイルを構築するスクリプトです。 このスクリプトは作業ディレクトリ内にあるファイルを zip にまとめる処理をします。 makefile の様に依存関係を評価して再構築する処理はしません。作業用ディレクトリで次の様に起動してください。

$ cd work_dir/scankeylx_src_r1704b
$ ./mkdistzip.sh


変更履歴


ライセンスと責任範囲

ライセンスと責任範囲は 2 条項 BSD ライセンスに準拠します。責任範囲について、2 条項 BSD ライセンスに則り次の様に定めます。

ソフトウエアは「あるがまま」で提供されます。明示黙示を問わず、商業的な使用可能性、および特定の目的に対する適合性に関する暗黙の保証も含め、またそれに限定されない、いかなる保証もありません。著作権者もコントリビューターも、事由のいかんを問わず、 損害発生の原因いかんを問わず、かつ責任の根拠が契約であるか厳格責任であるか(過失その他の)不法行為であるかを問わず、仮にそのような損害が発生する可能性を知らされていたとしても、本ソフトウェアの使用によって発生した(代替品または代用サービスの調達、使用の喪失、データの喪失、利益の喪失、業務の中断も含め、またそれに限定されない)直接損害、間接損害、偶発的な損害、特別損害、懲罰的損害、または結果損害について、一切責任を負わないものとします。


商標等

本文中に現れる製品名あるいは商標はその権利所有者による登録商標です。


なにかありましたら

作者 古田明徳  iafuruta@m7.dion.ne.jp  まで連絡頂ければ幸いです(メールアドレスをコピーする場合は a より始めてください)。利用規定にも有りますように対応が悪い可能性もありますが、対応に当たりたいと思います。


reportlog の使い方、解析結果の読み方
DVD-R または CD-R と起動用 USB メモリを併用して Lubuntu を起動し scankeylx を使用する
CD-R (光学メディア)から Ubuntu を起動して scankeylx を使用する - Ubuntu 10.04, 10.10 向け
Ubuntu を試す(Try ubuntu) でログイン画面になった場合の修復方法
Ubuntu を試す(Try ubuntu) で 画面が写らなくなる場合の修復方法
Lubuntu で使う
Raspberry Pi 3 で使う
更新履歴
戻る