トラブルシューティング
Lertaro の使用中に問題が発生した場合は、以下の手順に従って原因を確認・解決してください。
1. グローバルホットキーが反応しない
- バックグラウンドサービスの状態確認:設定 → サービス状態 を開き、バックグラウンドインデックスサービスが「実行中」であることを確認してください。通常のホットキーは App が処理しますが、昇格フックの常駐はサービスに依存しています。
- 管理者権限の分離(UIPI):フォアグラウンドのアプリが管理者権限で実行されている場合(例: 管理者コマンドプロンプトやタスクマネージャー)、Windows のセキュリティ機能(UIPI)により低権限プロセスからのキー入力がブロックされます。Lertaro はサービス経由でフックを自動昇格させますので、サービスが実行中であることを確認してください。
- プロセスブラックリストの確認:設定 → ホットキー で、操作中のアプリが「プロセスブラックリスト」に含まれていないか確認してください。リスト内のアプリがアクティブな場合、Lertaro はホットキーを意図的にスルーします。
- 全画面アプリでの自動バイパス:フルスクリーンのゲームや動画プレイヤーがアクティブな場合、操作を妨げないようホットキーは既定で無効化されます。全画面時も呼び出したい場合は、設定 → ホットキー で 全画面アプリフォーカス時も応答する を有効にしてください。
2. 検索結果が更新されない・古い
- NTFS / ReFS ドライブ:ファイルシステムの USN 変更ジャーナルを読み取ることで、遅延ゼロのミリ秒単位でリアルタイム更新されます。
- FAT32 / exFAT ドライブ:ファイルシステムの変更イベントにより継続的に監視されます。
- 手動でのインデックス再構築:PC の強制終了等でインデックスの整合性が崩れた場合は、設定 → インデックス → ローカルドライブ で該当ドライブの インデックス再構築 を実行してください。
3. ネットワークドライブが自動更新されない
- 定期スキャンの仕組み:ネットワーク共有(SMB / NAS)にはローカルの変更ジャーナルが存在しないため、定期ポーリングに依存します。
- 更新モードの確認:設定 → インデックス → ネットワークドライブ で、更新モードが「手動」になっていないか確認してください。手動の場合は定期更新に切り替えるか、「インデックス再構築」をクリックしてください。
- シンボリックリンク循環保護:NAS 上の循環シンボリックリンクによる無限ループを防ぐため、ループ検知機能が自動で重複パスをスキップします。
4. 特定のファイルやフォルダーが見つからない
- 除外ルールの確認:設定 → インデックス → 除外ルール を確認し、完全パス、ワイルドカード、正規表現によって誤って除外されていないか確認してください。
- ドライブの有効化確認:設定 → インデックス → ローカルドライブ で、対象のドライブが有効になっていることを確認してください。
5. インラインウィンドウで日本語 IME の候補窓が出ない
- 非フォーカス設計の特性:インラインウィンドウ は、閉じた後に元のアプリへ操作を戻すため、キーボードフォーカスを奪わない設計になっています。IME の候補窓は Windows の正規フォーカスを必要とするため、インラインでは表示されない場合があります。
- 推奨する対処法:
- ピンインを直接入力:Lertaro にはピンインエイリアスエンジンが内蔵されているため、ピンインの字母を入力するだけで中国語のファイル名に文字飛び一致します。IME の候補ウィンドウを開く必要はありません(詳しくは検索構文)。
- クイックウィンドウを利用:
Ctrl2 回連打で開くクイックウィンドウは完全なフォーカスを持つため、すべての IME が正常に動作します。
6. データディレクトリ・権限・更新の失敗
- データディレクトリの移設:インストーラー版の
%LocalAppData%\Lertaroやポータブル版のData\Usersを、シンボリックリンクまたはジャンクションで別のパーティションへ移すことは可能ですが、リンク先はローカルの固定ボリュームである必要があります。ネットワーク上の場所やリムーバブルボリュームを指すリンクは、起動時に理由を示して拒否されます(設定 → バージョン情報 を参照)。 - 起動が拒否される:データディレクトリが別の ID に属している:ユーザーデータディレクトリの所有者が自分のアカウントでない場合、Lertaro は起動を拒否し、まず昇格して修復を試みます。メッセージには実際の所有者と期待される SID が表示され、これが診断のすべてです。その修復の各ステップ(タイムアウトで強制終了された場合は、その時点で止まっていたステップ)は
%TEMP%\Lertaro\repair.logに記録されるので、報告時に添付してください。
フォルダーの所有者が BUILTIN\Administrators で、権限はすでに自分に FullControl を与えている場合は、所有者だけを元に戻します。以下のスクリプトは %LOCALAPPDATA%\Lertaro の範囲内の所有権だけを変更し、権限やファイルの内容には触れません。
powershell
$sid = [System.Security.Principal.WindowsIdentity]::GetCurrent().User
$root = Join-Path $env:LOCALAPPDATA 'Lertaro'
Get-Item -LiteralPath $root | ForEach-Object {
$acl = $_.GetAccessControl('Owner')
$acl.SetOwner($sid)
$_.SetAccessControl($acl)
}
Get-ChildItem -LiteralPath $root -Recurse -Force | ForEach-Object {
$acl = $_.GetAccessControl('Owner')
$acl.SetOwner($sid)
$_.SetAccessControl($acl)
}- 前回のサイレント更新が失敗した:更新プログラムは結論(状態・失敗理由・ロールバック先)をインストール先の隣の
update-result.jsonに書き込みます。Lertaro は次回起動時にその理由を一度だけ表示し、同じ結論を繰り返し表示しません。表示が繰り返される場合は、そのファイルを削除するか、新しいバージョンを手動で上書きインストールしてください。 - データディレクトリより下のリンクは一律に拒否:リンクとして解決できるのはデータディレクトリ自身の連鎖だけで、その内部のサブディレクトリはリンクにできません(設定 → バージョン情報 を参照)。
7. 起動直後にアプリが終了する
- インストールが終わってもウィンドウが表示されない: Windows 10 22H2(ビルド 19045)以前では、ハードウェア CET に対応した CPU(Intel 第 12 世代以降、AMD Zen 3 以降)を載せていても、そのシステムがユーザーモード CET を完全にはサポートしないため、.NET が Lertaro 自身のコードを実行する前に終了します。イベント ビューアーには .NET Runtime のエラーとして "Your Windows doesn't fully support CET. Please install all available Windows updates" が記録されますが、ログ機構が起動する前にプロセスが終わるため、Lertaro のログは一切残りません。
- インストーラー版は自動で対処します: インストールウィザードが Windows のビルド番号を確認し、Windows 10 22H2 以前では、そのインストールフォルダー内の 3 つの実行ファイルについてユーザーモードのシャドウ スタック設定を無効化します。他のプログラムには影響せず、ウィザードを再実行すれば同じ設定が再び適用されます。
- ポータブル版: ウィザードが及ばないため、PowerShell を管理者権限で開き、パスを実際のフォルダーに置き換えて次の 3 つのコマンドを実行してください。
powershell
Set-ProcessMitigation -Name 'D:\Lertaro\Lertaro.App.exe' -Disable UserShadowStack
Set-ProcessMitigation -Name 'D:\Lertaro\Lertaro.Service.exe' -Disable UserShadowStack
Set-ProcessMitigation -Name 'D:\Lertaro\lff.exe' -Disable UserShadowStack- 上の .NET エラーが求める通り、利用可能な Windows Update をすべて適用するのも別の解決策です。それでも即座に終了する場合は、次の節の手順でログを収集して Issue を登録してください。
8. ログの確認と Issue の報告
上記の手順で解決しない場合は、設定 → サービス状態 でログを確認してください。
- Service ログ:インデックス作成、USN ジャーナル、ネットワークスキャン、IPC 通信のログ。
- App ログ:UI 描画、プラグイン、ホットキー、設定変更のログ。
- Hook ログ:グローバルキーフックおよびマウス操作イベントのログ。
検索ボックスや重要度フィルター(Info / Warn / Error)を活用してエラーを特定し、GitHub Issue を報告する際にログを添付してください。