我用的处理有两种方法:1: 在Win7的控制面板关闭UAC功能;2: 使你的Delphi程序拥有系统管理员权限,拥有管理员权限后,你的程序图标在Win7下将有个盾牌.以Delphi7为例,在Delphi程序中添加管理员权限的方法如下(当中同时已包含WinXP主题显示): 2.1:把以下内容保存为文件名"WinXP_UAC.manifest":<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> <security> <requestedPrivileges> <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/> </requestedPrivileges> </security> </trustInfo> <assemblyIdentity type="win32" name="DelphiApplication" version="1.0.0.0" processorArchitecture="*"/> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="*"/> </dependentAssembly> </dependency></assembly>Manifest文件中最重要的部分是: <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />定义了程序的运行级别,共有三个值供选择:asInvoker:与启动它的进程相同的权限运行。highestAvailable:使用可能高权限运行requireAdministrator:以管理员权限运行。2.2:建立文件"WinXP_UAC.rc",内容只有一行:1 24 WinXP_UAC.manifest到了这里,我想大部分的程序员应该猜到下面该做什么和怎么做了.2.3: 用以下命令编译WinXP_UAC.rc,得到WinXP_UAC.RES. "C:/Program Files/Borland/Delphi7/Bin/brcc32.exe" WinXP_UAC.rc2.4: 在你的工程文件中添加如下语句,重新编译程序,大功告成: {$R WinXP_UAC.RES}2.5: 具体为什么要这样去实现,可在网上查询或参考微软的相关文档.