PostgreSQL 9.2.4-1-windows.exe
にWindows 7 64
をService Pack 1
とともにインストールしています。
私は以下を取得します、かなり有名なようです、エラー:
エラーが発生しました。
TEMP環境変数のパス内に書き込むことができません。
これは、起動時にすぐに発生します。 postgresqlスプラッシュが表示され、このエラーが発生します。
これまでにインターウェブで見つけたすべてのものを試してみました。以下が含まれます:
.VBS
スクリプトのファイルの関連付けを確認しました。不規則なものはありません(Windows Script Hostが登録されています)Windows Script Host
が有効になっています。HKLM\SOFTWARE\PostgreSQL\Installations
を手動で作成し、完全な権限を与えました。Everyone
にC:\Users\[username]\AppData\Local\Temp
とc:\temp
へのフルアクセスを付与しました基本的に トップ10のGoogleヒットのすべて。
32ビットバージョンで作業していますが、64ビットバージョンのインストールが同じエラーで失敗します。同様の設定で他のマシンに正常にインストールできます。
他に何ができますか?
インストールログファイル:
ログは2013年9月20日11:55:16に開始しました優先インストールモード:qtモードでインストーラーを初期化しようとしていますqtモードqtは正常に初期化されました実行中C:\ Users\chad\AppData\Local\Temp/postgresql_installer_67b274715d/temp_check_comspec.batスクリプト終了コード:0
スクリプト出力:「test ok」
スクリプトstderr:
レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2 Data Directoryが見つかりませんでした。変数iDataDirectoryを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2ベースディレクトリが見つかりませんでした。変数iBaseDirectoryを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2サービスIDが見つかりませんでした。変数iServiceNameを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2サービスアカウントが見つかりませんでした。変数iServiceAccountを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2スーパーユーザーが見つかりませんでした。変数iSuperuserを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2 Brandingが見つかりませんでした。変数iBrandingを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2バージョンが見つかりませんでした。変数brandingVerを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2のショートカットが見つかりませんでした。変数iShortcutを空の値に設定レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2 DisableStackBuilderが見つかりませんでした。変数iDisableStackBuilderを空の値に設定[11:55:21]既存のベースディレクトリ:[11:55:21]既存のデータディレクトリ:[11:55:21]ブランドの使用:PostgreSQL 9.2(x86)[11:55:21]スーパーユーザーの使用:postgresおよびサービスアカウント:NT AUTHORITY\NetworkService [11:55:21]サービス名の使用:postgresql-9.2 cscript // NoLogo "C:\ Users\chad\AppData\Local\Temp\postgresql_installer_67b274715d\prerun_checksを実行します。 vbs "スクリプト終了コード:1
スクリプト出力:入力エラー:ファイル拡張子「.vbs」のスクリプトエンジンがありません。
スクリプトstderr:プログラムがエラー終了コードで終了しました
Cscript // NoLogo "C:\ Users\chad\AppData\Local\Temp\postgresql_installer_67b274715d\prerun_checks.vbs"の実行エラー:プログラムはエラー終了コードで終了しました
私はWindows 7 64ビットでこの問題を抱えていましたが、次の解決策が私にとってうまくいきました( http://igordcard.blogspot.com/2012/03/unable-to-write-inside-temp- environment.html ):
なぜ
このエラーが発生した理由を理解するために、TEMPフォルダーに移動し、PostgreSQLインストーラーからログを読みました:C:\Users\myuser\AppData\Local\Temp\bitrock_installer.log
これは興味深い詳細に言及しました:Input Error: There is no script engine for file extension ".vbs".
そこで、TEMPフォルダーから別のファイルを選択しました。これは、インストーラーが使用する実際のスクリプトです。C:\Users\myuser\AppData\Local\Temp\prerun_checks.vbs
そして、cscriptを使用してコンソールから実行しようとしました:Input Error: There is no script engine for file extension ".vbs".
もう少し調べたところ、vbs拡張子に関連付けられているファイルの種類が変更されていることがわかりました。私の場合、Notepad ++によるものです。 Notepad ++をインストールした後、それにいくつかのファイル拡張子(vbsを含む)を関連付けたため、スクリプトのタイプを検出するときに問題が発生しました(これは発生しません)。
ソリューションregedit
を実行し、HKEY_CLASSES_ROOT\.vbs
に移動して、(デフォルト)キーを文字列VBSFile
に戻します。私の場合、以前はNotepad ++ _ fileに変更されていました。