“193:%1不是有效的Win32应用程序”与新的Rails应用程序的错误
我有一个新的rails应用程序,我已经在Windows 7下创build了一个目录,并input“rails newapp”。 创造得很好,当我访问根页面时,一切都很好。 但是,当我尝试访问将访问数据库的页面时,我得到这个:
193: %1 is not a valid Win32 application.
在developer.log中。 Mysql在我的机器上运行正常,我有其他的应用程序,我在这里运行在其他目录中,只是这个不起作用。 有什么想法吗?
这是为我工作的答案。 原来这是一个x64与x32问题和Rails 2.3.2的问题。
我从这里得到的答案( http://osdir.com/ml/RubyonRailsTalk/2009-06/msg01775.html ):
如果其他人有相同的问题后,我的Windows XP x64机器上苦苦挣扎,与MySQL 5.1.30(x64)和Rails 2.3.2安装,上述build议帮助我。 从这里下载libMySql.dll( http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/ )并把它放在ruby \ bin中解决了这个问题。
通过遵循这里博客的方向解决: http : //blog.mmediasys.com/2011/07/07/installing-mysql-on-windows-7-x64-and-using-ruby-with-it/
其中涉及使用MySQL连接器的非安装版本http://dev.mysql.com/downloads/connector/c/
我无法让webrick在x64的Windows 7系统上运行 – 得到同样的错误
“193:%1不是有效的Win32应用程序”
如果我只是replace文件libmysql.dll(如上面的post中所build议的),我得到了一个不同的错误。
“不正确的MySQL客户端库版本!”
我的path如下所示:C:\ Ruby187 \ bin; C:\ Program Files \ MySQL \ MySQL Server 5.5 \ bin; C:\ Ruby187 \ lib \ ruby \ gems \ 1.8 \ gems \ rails-3.1.1 \ bin
(不需要再次改变path)
如果在驱动器的根目录中有名为“Program”的文件,则会发生此错误。 例如说你正试图执行“C:\ Program Files \ SomeApp \ Bin \ SomeExe.Exe”,它会尝试执行“C:\ Program”(如果存在)。 在某些情况下,如果忘记用某些命令行命令引用“C:\ Program Files …”,则会创build具有该名称的文件。 这当然也适用于你D:驱动器等
如果尝试启动服务,则通常会出现此错误,但在其他情况下可能会发生此错误。
只需删除文件C:\ Program或D:\ Program等解决了这个问题。
遇到多个问题在Windows x64上设置MySQL与Rails我的build议是:
- 安装32位版本的MySQL,不要试图使用64位版本。
- 安装到一个没有空格的path中,不要接受默认的“C:\ Program Files \ MySQL \ MySQL Server 5.5 \”
- 安装MySQL gem的调用类似于:
gem install mysql - --platform = ruby --with-mysql-dir =“D:\ Programs \ MySQL \ MySQL-Server-5.5”--with-libmysqllib =“D:\ Programs \ MySQL \ MySQL-Server- 5.5 \ LIB \”
- 当你安装新版本的MySQL时,一定要卸载/重新安装gem。
- 确保D:\ Programs \ MySQL \ MySQL-Server-5.5 \ bin包含在您的path以及D:\ Programs \ MySQL \ MySQL-Server-5.5 \ bin中。 确保libmysql.dll的其他副本不会从path的其他位置或ruby安装目录中find。
这对我来说与MySQL-5.5.15-win32,mysql-2.8.1-x86-mingw32和Windows 7 x64。
从您的MySQL安装目录中复制libmysql.dll文件并将其粘贴到您的Ruby安装的bin目录中。 如果您的MySQL安装目录尚未包含文件libmysql.dll,则可能需要从http://dev.mysql.com/downloads/mysql/下载zip压缩文件。;
在Windows 7上使用Ruby(1.8.7)和MySQL(5.5),也得到错误193. 将libmySQL.dll复制到ruby / bin对我来说工作得很好。
C:\ Work \ redmine-2.4.1 \ config \ database.yml内容: #用ruby1.9给MySQL默认设置。 如果你正在运行Redmine #用MySQL和ruby1.8,用`mysql`replace适配器名称。 #PostgreSQL,SQLite3和SQL Server的例子可以在最后find。 #缩进线必须是2个空格(无标签)。 生产: 适配器:mysql 数据库:redmine 主机:localhost 用户名:root 密码:“pwd @ 123” 编码:utf8