crt*_*son 6 postgresql windows installation postgresql-9.2
我安装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
我正在使用 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
脚本输出:“测试正常”
脚本标准错误:
找不到注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\postgresql-9.2 数据目录。将变量 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 Shortcuts。将变量 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 和服务帐户:
脚本输出:输入错误:文件扩展名“.vbs”没有脚本引擎。
脚本标准错误:程序以错误退出代码结束
Error running cscript //NoLogo "C:\Users\chad\AppData\Local\Temp\postgresql_installer_67b274715d\prerun_checks.vbs":程序以错误退出代码结束
bsp*_*krs 11
我在 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。
小智 5
去:
Regedit =>
HKEY_CURRENT_USER =>
Software =>
Microsoft =>
Windows Script Host =>
Settings =>
Enabled
Run Code Online (Sandbox Code Playgroud)