2010-09-14 85 views
3

我不想改用Windows 7(32位),现在我的旧Delphi 7无法正常工作。实际上它工作得很好,直到昨天,但(我想)后,一些微软Windows更新,它崩溃,如果我双击DPR文件。然而,如果我以管理员身份运行,或者如果我没有双击DPR文件(并加载该DPR)而启动Delphi IDE,它就可以工作。所以,显然这是一个UAC问题。我非常生气,我转向Win 7,它与Win XP并没有太大区别(更好)。如果我不得不关闭UAC(Win 7带来的唯一重大改进 - 安全性),那么Win 7就没有优势了。 那么,如何在不禁用UAC的情况下使Delphi工作?如何在不禁用UAC的情况下在Windows 7上运行Delphi 7?

我希望其他有此问题的人找到了解决方案。 :)


更新:

  • 我曾尝试已经让德尔福权利委员会在其写的 “C:\程序文件\ Borland的\德尔福文件夹”。没有运气。
  • 我不想在管理模式下运行它(这包括XP模式),因为它将以不同的级别运行。一些API调用不会失败(因为它以管理员模式运行)。从非管理程序拖放和其他类似的功能也将无法正常工作。
  • 安全性不是问题。我不盲目地从随机的人(通过垃圾邮件发送者)中通过电子邮件或从不知名的网站下载任何软件,所以我没有被病毒感染。哦...我不使用IE浏览器:)
+0

所以... *葡萄酒*,它甚至没有在Windows上运行,运行德尔福7比Windows 7本身更好?是的,Windows 7具有向后兼容性,是的,是的。 – 2010-09-14 11:54:30

+0

Wine可能已经针对Win XP进行了优化。 – Ampere 2010-09-14 12:41:24

+2

如果您可以以普通用户的身份启动Delphi并无任何问题地打开DPR文件,它是“显然是UAC问题”吗? – 2010-09-14 14:15:00

回答

3

已解决。这是一个DDE问题。 我刚刚删除了与Delphi项目相关的ddeexec键。

5

最好的解决方案是Windows 7 Professional的XP Mode。我建议通过VMware Player转换和使用XP Mode VM。然后它是快速和可靠的。

更新:所以实际上它不是我推荐的XP Mode本身,而是它的XP许可证。您可以多次复制它,但是(当然)一次只能使用一个实例。

+0

在这种情况下,在调试器下运行的应用程序也可以在XP下运行? – 2010-09-14 20:38:38

+0

你有没有试过在“XP模式”下运行Delphi?我们尝试过,这绝对是可怕的。如果不使用某种形式的漫游,我不会推荐这样做。 – 2010-09-14 21:41:28

+0

@Jon:当然可以!我忘了提及我使用VMware Player转换后的XP Mode。 – splash 2010-09-15 06:09:30

7

尝试在%program files%之外安装Delphi。考虑到UAC设计的软件(或者自NT4以来存储用户数据的指南),这是最好的选择。

我在Windows 7上运行Delphi 5和7的方式,到目前为止没有问题。

+0

这种方法效果很好。我们有几个使用Delphi 6的开发人员。我们已经在Vista 32位,Win7 32位和Win7 64位中使用它,所有这些都打开了UAC。我们安装到C:\ Programs \ Borland,而不是C:\ Program Files \ Borland。 – 2010-09-14 21:43:18

+0

我已经给Delphi写了程序文件的权限。我不认为这是一个问题了。但我同意你说,很多程序应该安装在除Program Files以外的其他文件夹中。感谢微软这一新趋势! – Ampere 2010-09-16 07:58:37

+0

使用SysInternals Process Monitor来检查IDE在断开之前所做的最后一件事情。这是一个努力,但它很可能查明UAC问题。首先,我会质疑你的“我给德尔福写信给xxx”的行为是否有效。 – 2010-09-17 08:23:52

1

最简单的方法是以管理员身份安装它,或者如果您仍然遇到问题,请在Google中搜索适当的文件,然后该文件夹可能设置为只读,因此您必须更改该文件。

这实际工作,这是我如何使我的工作