怎么打包安装程序?

litsnake 2018-07-14 11:28:05
环境:vs2013
os:windows 7 64位
已经安装了installshield limited editor

我写的程序用到了SQLite数据库,编程的时候我是直接在vs2013 NuGet 控制台 install-package system.data.sqlite.x64 安装引用的SQLite,在vs2013 上运行调试的没有问题。

问题:
1。安装网上的打包教程,打包安装好了,在异地环境安装后运行报错,应该是没有找到SQLite,请问打包的时候会不会吧SQLite 自动加进去;还是需要安装完后自己再去下载个SQLite 安装包,安装一下?打包程序不会给我自动安装所有需要的组件吗?感觉好麻烦啊!
2。因为打包的项目是windows 服务,我安装之后好像没有给我生成windows服务,我百度了一下是要用InstallUtil 手工执行;感觉好像很low 的样子,别人的程序都是一体化安装的,咋还要安装后搞这么多手工,感觉好像不应该这么弱才对啊,是哪里不对吗?
3。项目中生成目标设置本是for any CPU,因为SQLite会报错,所以按照网上说的改成了for X64,这样是不是我的程序只能安装在64位的操作系统上了?32位的运行不了了?
4.加入生成目标平台是for any,是不是这个程序就可以运行在windows2003,windows 7,windows2008平台的32,64位平台了?
问题比较多,因平时用java,不需要知道这么多平台和安装细节,所以请教一下各位,谢谢,哪里说的不够清楚的,我补充,谢谢!


...全文
194 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
litsnake 2018-07-14
  • 打赏
  • 举报
回复
1。针对sqlite测试,打包到异地去运行测试程序,报错信息中好像看见已经安装了SQLite 按,为啥报错,报错信息如下:
有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.BadImageFormatException: 试图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)
在 System.Data.SQLite.UnsafeNativeMethods.sqlite3_config_none(SQLiteConfigOpsEnum op)
在 System.Data.SQLite.SQLite3.StaticIsInitialized()
在 System.Data.SQLite.SQLiteLog.Initialize()
在 System.Data.SQLite.SQLiteConnection..ctor(String connectionString, Boolean parseViaFramework)
在 System.Data.SQLite.SQLiteConnection..ctor(String connectionString)
在 WindowsFormsApplication1.Form1.button1_Click(Object sender, EventArgs e) 位置 d:\working\VC\sqlitetest\WindowsFormsApplication1\WindowsFormsApplication1\Form1.cs:行号 27
在 System.Windows.Forms.Control.OnClick(EventArgs e)
在 System.Windows.Forms.Button.OnClick(EventArgs e)
在 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
在 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
在 System.Windows.Forms.Control.WndProc(Message& m)
在 System.Windows.Forms.ButtonBase.WndProc(Message& m)
在 System.Windows.Forms.Button.WndProc(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 已加载的程序集 **************
mscorlib
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
WindowsFormsApplication1
程序集版本:1.0.0.0
Win32 版本:1.0.0.0
基本代码:file:///C:/Program%20Files%20(x86)/test/testsqlite/WindowsFormsApplication1.exe
----------------------------------------
System.Windows.Forms
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
程序集版本:4.0.0.0
Win32 版本:4.7.2558.0 built by: NET471REL1
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Data.SQLite
程序集版本:1.0.108.0
Win32 版本:1.0.108.0
基本代码:file:///C:/Program%20Files%20(x86)/test/testsqlite/System.Data.SQLite.DLL
----------------------------------------
System.Data
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Transactions
程序集版本:4.0.0.0
Win32 版本:4.7.3130.0 built by: NET472REL1LAST_B
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
mscorlib.resources
程序集版本:4.0.0.0
Win32 版本:4.7.2558.0 built by: NET471REL1
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
System.Windows.Forms.resources
程序集版本:4.0.0.0
Win32 版本:4.7.2558.0 built by: NET471REL1
基本代码:file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_zh-Hans_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------

************** JIT 调试 **************
要启用实时(JIT)调试,
该应用程序或计算机的 .config 文件(machine.config)的 system.windows.forms 节中必须设置
jitDebugging 值。
编译应用程序时还必须启用
调试。

例如:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

启用 JIT 调试后,任何未经处理的异常
都将被发送到在此计算机上注册的 JIT 调试程序,
而不是由此对话框处理。


110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧