首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InstallUtil抛出错误消息

InstallUtil抛出错误消息
EN

Stack Overflow用户
提问于 2010-11-08 13:49:31
回答 3查看 17K关注 0票数 3

尝试在64位W7上运行,在Visual C# 2008Express上使用.Net 3.5,我尝试在框架和Framework64文件夹中运行installutil.exe,两者都抛出了相同的错误。3.5文件夹没有installutil.exe,4.0在两个文件夹中都不起作用。

在IDE中,除了发布,没有发布版本,它们是一样的吗?

我遵循本文中的教程:http://www.switchonthecode.com/tutorials/creating-a-simple-windows-service-in-csharp

会出什么问题呢?

代码语言:javascript
复制
D:\install>C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe setup.e
xe
Microsoft (R) .NET Framework Installation utility Version 2.0.50727.4927
Copyright (c) Microsoft Corporation.  All rights reserved.

Exception occurred while initializing the installation:
System.BadImageFormatException: Could not load file or assembly 'file:///D:\inst
all\setup.exe' or one of its dependencies. The module was expected to contain an
 assembly manifest..
EN

回答 3

Stack Overflow用户

发布于 2010-11-08 14:55:56

当您尝试在32位上下文中加载64位程序集或本机dll时,通常会发生System.BadIMageFormatException,反之亦然。

如果你运行的是64位版本的windows,还有一个目录c:\windows\Microsoft.Net\Framework64\。尝试在其中一个子目录中找到的installutil。

另一个可能的问题是,您正在对错误的程序集(.exe或.dll)运行InstallUtil。您正在对setup.exe运行它。在你所指的教程中,没有明确的设置程序。InstallUtil是针对MyWindowsService.exe运行的。在本教程中,您将创建一个使用System.Configuration.Install名称空间的程序。InstallUtil使用该命名空间中的属性[RunInstaller(true)]来查找程序集中的“安装说明”,因此不需要单独的安装程序(setup.exe)。

你有没有尝试过先严格遵循教程,然后用你自己的代码来扩展它?

票数 6
EN

Stack Overflow用户

发布于 2016-04-22 17:15:24

在.NET 4中构建windows服务并尝试从.NET v2目录使用installutil.exe进行安装时遇到的相同问题。您必须从.NET框架目录使用installutil.exe (.NET/Microsoft.NET/ v4 /v4.0.30319/installutil.exe)

票数 3
EN

Stack Overflow用户

发布于 2019-09-28 06:30:16

这太老了,但我现在仍然在做这件事上有一些困难,而其他类似的帖子,同样的答案对我没有帮助,所以我想这一定是答案(版本冲突)。

我只是太傻了,看不到我的错误,我的.exe文件的路径在其中一个文件夹中有一个空格(用户名有两个用空格分隔的名称),我所要做的就是运行命令,.exe文件的路径在"“和problem fixed之间。只是为了防止其他人像我一样遇到这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4121578

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档