为了账号安全,请及时绑定邮箱和手机立即绑定

在客户端系统中安装后,桌面应用程序无法打开

在客户端系统中安装后,桌面应用程序无法打开

万千封印 2019-09-27 15:17:40
我目前正在使用带有4.6.1 .net框架的Visual Studio 2017。我为桌面应用程序创建了安装文件,安装程序可以在我的系统中完美安装并运行。问题是该安装程序已成功在其他计算机上安装,但未打开该应用程序。编辑在客户端系统中下载了.net框架,但是仍然出现相同的问题。编辑2我使用Dependency Walker进行了依赖项扫描。它说有很多文件,系统找不到-打开文件时出错。系统找不到指定的文件。  API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL  API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL  API-MS-WIN-CORE-WINRT-L1-1-0.DLL  API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL  API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL  API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL  DCOMP.DLL  IESHIMS.DLL另外,发现x86类型的模块存在错误-包括setup.exe-但我不知道这是怎么发生的。我选择列出的任何位置都选择了64。请找到屏幕截图。如果确实是问题所在,我该如何解决?
查看完整描述

3 回答

?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

应用程序启动问题:这是一个简短的版本:启动时WPF应用程序崩溃。Chattier版本。


日志:始终检查所有事件日志,应用程序日志和 MSI日志 -如果可用。只是提一下。也许尝试按此处所述连接调试器以进行测试 -只要应用程序完全启动。然后逐步执行代码。


在通常的元凶:你可能只是lack a runtime,有一个bitness problem(64分之32位)或insufficient permissions / privileges,或configuration errors(ini,xml,registry,etc...)。


总而言之 -鱼雷,在下面全面散播-没有什么比这更愚蠢的了:-):


缺少运行时:首先,始终检查缺少的运行时。例如:.Net,.Net Core,Java,Silverlight,  Direct X(即使是现在使用的应用程序), ,VC++ Runtime(MS-XML传统), etc...。请记住,它们有不同的版本,有些不能并存,而有些可以并排运行。


错误代码:查找错误代码和异常消息。


“魔术数字数据库” -在线查找。

检查错误代码 -几种工具和方法。

调试工具:有关调试工具的一些信息。


工具调试依赖问题 - ,ProcMon.exe,,VSDependency Walkeretc...

COM依赖项错误

基本服务调试工具:

Event Viewer,Task Manager,Services.msc

Process Explorer,NET command,SC.exe

Windows Services常见问题(FAQ)

ProcMon.exe:交易工具。一种适合所有人的工具。蜜蜂的膝盖,最高处,量子跃迁,猫的睡衣(是的,这是Top Gear仓鼠的典故)。有效使用它可能是一个挑战,但是它是最好的免费的通用调试工具。


快速,基本的样本

Hanselman的较长视频样本

其他想法:


配置设置?

Dev-box sins:硬编码引用?测试服务器/ UAT链接?

清单,INI文件和XMLfiles?

注册表设置?HKLM / HKCU

连接字符串。也请参见下面的“身份验证和授权”部分。

平台和位数?(ARM,Intel 32/64等)。

很常见的错误从注册表配置单元(读的经典浪费时间):

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\MyApp\MySettings (32位)

HKEY_LOCAL_MACHINE\SOFTWARE\MyApp\MySettings (64位)

先决条件和依赖项?

关于依赖项扫描和调试主题。

Dependency Walker:依赖项的类型。

是否Fuslogvw.exe告诉你什么?(.NET应用程序的.NET程序集绑定失败)。运行时如何查找程序集

快速检查:Visual Studio模块视图

注册丢失/损坏(间接依赖)

缺少COM,COM Interop(regasm.exe),无注册COM(基于清单)

从COM组件调用.NET组件

从.NET客户端调用COM组件

并行Win32汇编清单损坏(模糊不清,可能是由于草率的公司应用程序重新包装引起的,可能会打击看似随机的PC)

GAC安装?

存在两个GAC。

GAC / WinSxS提交问题:GAC / WinSXS文件直到StartServices之后的提交阶段才安装到GAC中。

权限和特权?-本地-ACL权限和NT权限?

ProcMon.exe

认证/授权 -与网络相关

本地用户,域用户,Active Directory:组成员身份,组策略等。

正在启动用户:用户配置文件有问题吗?也许尝试与另一个登录失败的用户?

身份验证模式:Windows身份验证。SQL Server身份验证等...

通用网络和代理问题?(代理,WINS,DNS和网络中涉及的所有复杂性。UNC路径是否可达?)

许可?(可能与硬件加密狗和驱动程序有关)

安全软件是否受到干扰?(软件/硬件防火墙,防病毒,加密工具和套件等)。

操作系统版本或版本?(Windows 7问题)

本土化?非英语系统?

驱动程序?

硬件?

编码?

系统损坏?(错误的时间,磁盘错误,文件和路径名太长,磁盘已满,“有问题”)

目标机器的性质?虚函数?国有企业?目标机器是真实机器吗?测试机器?

锁定/阻止/使用中的文件和注册表项?

恶意软件?就问题而言,几乎可以引起任何后果。



查看完整回答
反对 回复 2019-09-27
?
ITMISS

TA贡献1871条经验 获得超8个赞

要成功部署应用程序,您还必须部署该应用程序引用的所有组件。查看部署过程


用户可能需要计算机上的管理权限或类似的用户权限才能安装自举组件。对于ClickOnce应用程序,这意味着用户可能需要管理权限才能安装该应用程序,而不管该应用程序指定的安全级别。安装该应用程序后,用户可以在没有管理权限的情况下运行该应用程序。


我假设您和您的客户端正在以管理员身份运行安装和应用程序。


查看完整回答
反对 回复 2019-09-27
?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

可能的根本原因:

  1. 系统先决条件不满足,您应该检查目标客户端系统上所有依赖项是否准备就绪,或将先决条件添加到安装指南中

  2. 权限问题,您可以使用管理员权限在本地复制文件或更改注册表,但客户端不是。如果是这样,则需要将文件更改为“ C:\ Users {用户名} \ AppData \ Roaming”或在客户端系统上以管理员权限安装。

在这种情况下,应用可能会在客户端系统中崩溃:

  1. 检查您的应用程序日志是否有任何错误

  2. 检查Windows记录是否有任何错误

  3. 使用WinDbg.exe转储系统信息并进行调试


查看完整回答
反对 回复 2019-09-27
  • 3 回答
  • 0 关注
  • 943 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信