soildworks2019安装时以管理员身份运行server_install.bat时出错了?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了soildworks2019安装时以管理员身份运行server_install.bat时出错了?相关的知识,希望对你有一定的参考价值。

显示找不到指定的文件

先运行一下server_remove.bat,先让服务器停止,然后再运行server_install.bat

搞定。

参考技术A 用记事本打开这个bat文件。
在开头新起一行,写上cd /d "%~dp0"
之后保存,再用管理员身份运行。这样脚本就会在运行时跳转回自身目录中。那么就不会再出现找不到文件的提示了。

脚本以管理员身份运行时,它的工作路径会变到System32这个系统目录中去,所以会导致脚本中的一些命令出错。因此我们利用一个跳回的命令,让它回自己目录,就不会有什么问题了。追问

这个方法我没试过,我用保留个人文件的重装系统解决了问题,但还是采纳吧

本回答被提问者采纳

在登录时以提升的权限运行桌面应用程序

【中文标题】在登录时以提升的权限运行桌面应用程序【英文标题】:Run at logon a desktop application with elevated privileges 【发布时间】:2011-08-27 07:34:09 【问题描述】:

任务很广泛,但我对目前找到的解决方案并不满意。

程序必须在后台运行,定期扫描系统以了解状态变化,并在某些情况下向用户显示通知弹出窗口。该程序在 Windows 7 下运行。

有两个细微差别。首先,它需要提升权限(***别,以管理员身份运行,Windows 中有一堆术语)来扫描一些受保护的系统信息。其次,它必须适用于所有具有管理权限的用户。

以下是典型解决方案列表以及它们不适合的原因。

    将桌面应用程序放置到 Windows 启动文件夹中。不起作用,因为不允许指定提升的权限。默认情况下,应用程序不会运行。充其量,如果配置文件的兼容性,每次程序运行时屏幕上都会出现一个 UAC 弹出请求。 将文件名放入注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run。同样的问题。 将任务添加到 Windows 计划程序并告知使用最高运行级别。仅适用于单个用户,任务在该用户下运行。其他人不会看到窗口。 编写一个 Windows 服务。该服务可以监控用户登录并在他们的会话中运行桌面应用程序。没试过这个,但读它是可能的,虽然很棘手。此外,服务更难调试。看起来有点矫枉过正。 编写一个 Windows 服务,它接收来自桌面应用程序的调用,执行管理工作并将结果返回给调用者。桌面应用程序无需特权即可运行。该解决方案看起来很奇怪,因为这意味着应该为所有管理任务编写除了传输请求和响应之外什么都不做的无意义的包装服务。再说一次,服务更难调试。

任务看起来很普通,但解决方案很复杂。我误解了什么吗?有更简单的方法吗?

PS:我看过这个话题Process with administrative privileges run on user logon,但想知道有没有更简单的方法。

更新

我发现带有 Windows 服务的解决方案也不适用于我的任务。我需要访问用户的个人证书存储。服务在一个帐户下运行,需要访问另一个帐户的证书。我还没有找到如何使用 .Net 加密 API 来执行此操作,并且猜测由于安全策略,这是不可能的。 我发布了我最终想出的解决方案作为这个问题的答案。

【问题讨论】:

【参考方案1】:

只需使用 Winaero 的 Elevated Shortcut 并将快捷方式放在启动文件夹或组策略的登录脚本中。

【讨论】:

【参考方案2】:

根据您要完成的任务,您可以使用众所周知的安全漏洞绕过 UAC 来运行提升的代码。我不建议将其用于任何类型的商业用途,但在快速而肮脏的情况下,它可能只是门票。

http://www.pretentiousname.com/misc/win7_uac_whitelist2.html

【讨论】:

【参考方案3】:

最终,我不得不以繁琐的方式实现这一点。我为每个用户创建一个 Windows 任务计划程序任务。这些任务完全相同,但在不同的凭据下同时运行。

此解决方案导致的附加任务是如何在程序设置中添加和删除这些任务。我实现它如下。任务名称是安装过程中生成的 GUID。在安装过程中,会创建一组注册表条目,其中条目名称是用户名,条目值是用户任务的 GUID。在卸载期间,名称存储在注册表中的任务将从调度程序中删除。

【讨论】:

【参考方案4】:

您需要一项服务来完成“肮脏的工作”(即需要管理员权限的地方)。添加一个与用户交互的应用程序。

服务并不难调试 - 只需连接到 Visual Studio 中正在运行的进程即可。

【讨论】:

为此,我必须在解决方案中创建两个额外的项目 - Windows 服务和 WCF 服务并将它们添加到设置中。我越来越相信这样一个简单的任务太难了。另外,我发现这个解决方案对我不起作用,我在问题更新中解释了它。

以上是关于soildworks2019安装时以管理员身份运行server_install.bat时出错了?的主要内容,如果未能解决你的问题,请参考以下文章

win10下pl/sql连接oracle数据库时以管理员身份运行才能连上

如何在启动时在 Windows 7 上以管理员身份自动运行程序?

Win10启动非安装版MySQL

Win10启动非安装版MySQL

无法以其他用户身份启动 Visual Studio 2015

如何在运行时以编程方式从本地数据库获取连接字符串?时间:2019-06-01 标签:c#winforms