![](/img/trans.png)
[英]How do I prevent my ContextMenu from being constrained to its container (Win Forms c#)
[英]C# Prevent my .exe win application on being renamed?
嗨,是否可以防止 my.exe 应用程序被重命名..?
这是 senario(我的问题)
在我运行我的程序后,(假设我运行 MyApp.exe)一个不友好的用户突然为了好玩,将我的 MyApp.exe 重命名为......让我们说 Goodtime.exe
在那之后。 他注销 windows(xp),然后当我的程序尝试在启动 MyApp.exe 上运行时,我不会因为它已重命名
是否可以通过代码来防止这种情况?
感谢任何愿意帮助的人=)
你不能真的试图阻止它。 这是用户的计算机,如果他们想重命名计算机上的文件,他们可以这样做。
这是不可能的。
但是,还有另一种方法可以做到这一点。 您可以将用户设置为对其计算机的用户帐户具有有限的权限。 在这种情况下,他无法以他想要的方式重命名文件。 这是操作系统提供的限制,只有计算机的管理员才能对用户帐户设置这些限制。
编辑我的意思是,如果您是计算机的管理员,作为替代方案,您可以手动限制登录计算机的用户的权限。 为了更好地理解我的意思,请阅读我帖子中的回复。 :)
您可以将应用程序放在用户不太可能 go 的位置并重命名它,例如在程序文件文件夹中。 但是您无法阻止他们实际重命名应用程序。
如果用户不是该计算机上的管理员,则默认情况下他们将无权重命名 Program Files 目录中的文件。 人们希望不友好的用户不是目标机器上的管理员(如果是,他们可以做的比重命名一个应用程序文件更糟糕)。
您可以检查可执行文件在运行时的名称。
但是您不能阻止用户重命名它。
您可以考虑使用 clickonce 发布。 在我的一生中,我永远无法保证我可以在单击安装后找到红润的应用程序,这样可能会阻止您友好的用户弄乱该应用程序? ;-)
这是有关ClickOnce Publishing的一些信息。
本质上,编写一个应用程序,右键单击项目/解决方案,选择“发布”,然后按照向导进行操作。
它不能保证用户不能重命名和弄乱文件,但它会让它变得更难。
您可以在运行时阻止重命名或移动 exe 文件。 打开 exe 文件中的 exe 文件进行读取和拒绝写入。 只要它运行,就保持这个文件打开。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.