与此问题Visual Studio 2013 High DPI on 4k Screen类似,我已经发布了答案,但现在已经删除,因为发现了以下问题。
我刚刚购买了一台新的4K笔记本电脑,并且在VS2013中显示SSIS封装设计器和对话框以及SSMS中的对话框等,一直遇到高DPI问题。
我找到的SSMS解决方法是启用位图缩放并创建清单文件 - ssms.exe.manifest - 与ssms.exe位于同一文件夹中。
本文介绍如何为SSMS修复此问题
为了完整起见,我复制了文章中描述的过程。
设置此注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide]
"PreferExternalManifest"=dword:00000001
然后将此xml粘贴到清单文件中。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*">
</assemblyIdentity>
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="amd64" publicKeyToken="1fc8b3b9a1e18e3b">
</assemblyIdentity>
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<asmv3:application>
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
</assembly>
现在这对于SSMS来说效果很好(到目前为止),所以我尝试将此修复程序应用于VS2013。虽然它确实解决了SSIS设计器显示问题,但在尝试启动调试器时会出现问题。此外,这会影响调试其他项目类型 - C#,VB以及SSIS项目。
我猜测清单中的依赖项是不完整或不准确的,因为0x80040155
是一个未注册错误代码的COM接口。
Unable to start debugging.
An error occurred that usually indicates a corrupt installation (code 0x80040155). If the problem persists, repair your Visual Studio installation via 'Add or Remove Programs' in Control Panel. (Microsoft Visual Studio Debugger)
Unable to start debugging.
The debugger is not properly installed.
Run setup to install or repair the debugger. (Microsoft.DataTransformationServices.VsIntegration)
------------------------------
Program Location:
at Microsoft.DataTransformationServices.Project.DataTransformationsPackageDebugger.LaunchVsDebugger(IVsDebugger iVsDebugger, DataTransformationsProjectConfigurationOptions options)
at Microsoft.DataTransformationServices.Project.DataTransformationsPackageDebugger.ValidateAndRunDebugger(Int32 flags, IOutputWindow outputWindow, DataTransformationsProjectConfigurationOptions options)
at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.LaunchDtsPackage(Int32 launchOptions, ProjectItem startupProjItem, DataTransformationsProjectConfigurationOptions options)
at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.LaunchActivePackage(Int32 launchOptions)
at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.LaunchDtsPackage(Int32 launchOptions, DataTransformationsProjectConfigurationOptions options)
at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.Launch(Int32 launchOptions, DataTransformationsProjectConfigurationOptions options)
===================================
所以我的问题是,任何人都可以为VS2013建议一个合适的清单(或其他方式让SSIS设计师行事)吗?
答案 0 :(得分:6)
好的,所以我绝对不知道我在做什么。
但是,在与devenv.exe(C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE)相同的文件夹中,还有一些其他清单文件,其中一个用于DebuggerProxy.dll 。表现。由于这是一个调试器问题,并且似乎缺少对调试器的引用,我将内容合并到devenv.exe.manifest文件中并提出了这个,这对我有用:
library(dplyr)
df %>%
mutate_each(funs(unique(.)[cumsum(DVID==0 & AMT > 0)]), DV, PERIOD)
不幸的是,帖子中的字符有30k的限制而且它不合适,所以我在我的一个驱动器here中粘贴了该文件的副本。