我正在使用一个使用SQLite的vb.net应用程序,因为它是针对.net框架的版本2编译的,所以我将此行添加到我的配置文件中
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
我的应用程序的最终目标是使它成为一个独立的,所以除了exe之外没有一个文件(应用程序将生成数据库的文件,但我的观点是我希望用户只下载1个单个文件)。
我注意到,当我构建它时,配置文件总是被复制,如果我运行没有配置文件的应用程序,我会得到未被捕获的异常“遗留”错误..
有没有办法在运行时包含该配置?或者可能会捕获某种类型的异常以防止该对话框出现并吓唬用户(我知道这可能不是最好的方法)
我搜索过并在SO上发现了其他类似问题,但我找到的问题都没有找到适用于我的解决方案,所以我将非常感谢您的帮助。
答案 0 :(得分:2)
虽然它是possible to set the legacy runtime policy at runtime,但我建议将其部署为安装程序。
应用程序将为数据库生成一个文件,但我的观点是我希望用户只下载1个单个文件
他们可以下载您的安装程序,它可以正确设置所有内容。在任何情况下都可能需要这样做,因为SQLite在部署中需要自己的DLL以及.exe。