Tag: 泊坞员注册表

如何在c中指定64位整数

我试图在C中使用64位整数,但得到混合信号,应该是可能的。 当我执行printf时: printf("Size of long int:%d\nSize of long long int:%d\n\n",(int)sizeof(long int), (int)sizeof(long long int)); 我得到的回应是: long int的大小:4 long long int的大小:8 这让我觉得long long int有8个字节= 64位。 但是,当我尝试声明以下variables时: long long int a2 = 0x00004444; long long int b2 = 0x000044440; long long int c2 = 0x0000444400; long long int d2 = 0x00004444000; long long int e2 = 0x000044440000; […]

我已经将Windows服务构build为“任何CPU”。 为什么它在我的64位机器上以32位模式运行?

我已经将Windows服务构build为“任何CPU”。 但是,当我在我的64位机上运行它时,它运行在32位。 我该如何解决? 我正在使用.NET和C#,我的操作系统是Windows 2008 R2。 如果我在x64中构build它,它将以64位模式正确加载。 然而,“任何Cpu” – 这是我想要的 – 加载在32位,即使它运行的机器完全支持64位。 编辑根据反馈添加更多信息 我们有第三方工具以及参考c ++托pipe程序集。 这些可能会或可能不会为任何CPU构build。 事实上,我知道c ++托pipe程序集只是为x86构build的。 然而,奇怪的是,如果我特别指定x64的过程将启动,并在x64工作。 如果框架试图加载c ++托pipe程序集,则会失败。 我不介意,因为在代码中,如果我们在64位模式下运行,我们不会加载32位托pipe的++程序集。 难道这个构build数字是因为在这里有一个32位的程序集,它应该把启动过程(在这种情况下是一个Windows服务程序集)标记为x86?

为什么64位Windows不能解除用户内核用户exception?

为什么64位Windows在exception期间展开堆栈,如果堆栈穿越内核边界–32位Windows可以? 这整个问题的背景来自: 消失OnLoadexception的情况 – 在x64中的用户模式callbackexception 背景 在32位Windows中,如果我在我的用户模式代码中抛出exception,则从内核模式代码中调用该代码,这是从我的用户模式代码中调用的,例如: User mode Kernel Mode —————— ——————- CreateWindow(…); ——> NtCreateWindow(…) | WindowProc <———————+ Windows中的结构化exception处理(SEH)可以展开堆栈,通过内核模式展开,返回到我的用户代码,在那里我可以处理exception,我看到一个有效的堆栈跟踪。 但不是在64位的Windows Windows的64位版本不能这样做: 出于复杂的原因,我们不能在64位操作系统 (amd64和IA64) 上传播exception 。 自从Server 2003的第一个64位版本以来,情况一直如此。在x86上,情况并非如此 – exception通过内核边界传播,并最终走回帧 由于在这种情况下无法回溯可靠的堆栈跟踪,所以必须作出决定:让您看到非无意义的exception,或者完全隐藏它: 当时的内核架构师决定采取保守的AppCompat友好的方法 – 隐藏exception,并希望最好的。 本文继续讨论所有64位Windows操作系统的performance如何: Windows XP 64位 Windows Server 2003 64位 Windows Vista 64位 Windows Server 2008 64位 但从Windows 7(和Windows Server 2008)开始,架构师改变了他们的想法。 对于只有 64位应用程序(不是32位应用程序),它们(默认情况下)会停止抑制这些用户内核用户exception。 […]

Visual Studio 2012远程操作所花的时间比预期的要长

我在Windows 8 64位上运行Visual Studio 2012。 我有一个在源代码控制的64位项目,我试图在我的Windows 8电脑上运行它。 应用程序构build成功,但远程debugging器根本不起作用。 它说:“一个远程操作需要比预期更长的时间”。 我明白为什么它的远程,是32位的Visual Studio需要访问msvsmon.exe通过64位应用程序进行debugging,但我从来没有见过这种情况发生在源代码已检出本地机器上。 我试图重新安装Visual Studio 2012,玩端口(4016),以及作为pipe理员运行。 通过卸载客户端检查VPN是不是一个问题。 我现在没有想法。 我试图创build一个全新的本地项目来testing,并将其设置为64位,但操作仍然不成功。 任何想法或build议? 这是Windows 8上的Visual Studio 2012的已知问题吗?

确定Windows上的静态库(LIB)的CPU体系结构

我刚刚在使用VS2008的64位Windows机器上构build了libpng。 它会在\ projects \ visualc71 \ Win32_Lib_Release目录(用作“LIB Release”的configuration)中生成一个libpng.lib文件。 我用dumpbin来检查这个LIB文件: C:\Temp\libpng-1.4.3>dumpbin projects\visualc71\Win32_LIB_Release\libpng.lib Microsoft (R) COFF/PE Dumper Version 9.00.30729.01 Copyright (C) Microsoft Corporation. All rights reserved. Dump of file projects\visualc71\Win32_LIB_Release\libpng.lib File Type: LIBRARY Summary 8E4 .debug$S DF2 .drectve 2BCD .rdata 21165 .text C:\Temp\libpng-1.4.3> 它并不显示LIB文件的体系结构。 如何查找给定的LIB文件是为32位还是64位体系结构构build的?

检查非托pipeDLL是32位还是64位?

我如何以编程方式告诉C#中的非托pipe DLL文件是x86还是x64?

IIS 7.5修复试图加载一个不正确的格式问题的程序?

我有一个exception的问题抛出一个exception“试图加载程序格式不正确”的错误? 我在同一个IIS服务器上有两个相同的网站,我的构buildconfiguration适用于其中的一个,但不是其他的。 我的C#MVC 2 Web应用程序可以部署到驻留在同一个IIS 7.5 Web服务器(x64)上的两个网站。 一个是活动站点(使用发布configuration部署),第二个是testing站点(使用为此项目创build的新Betaconfiguration部署)。 两个项目的代码都是一样的。 他们有不同的构buildconfiguration,但configuration内的设置是相同的。 将发布configuration部署到默认网站/ my_app完美。 将Betaconfiguration部署到Beta / my_app部署,但是当我加载站点(任何页面)时,我得到不正确的格式exception。 我不明白为什么使用完全相同的configuration设置进行部署将适用于一个网站,而不是另一个(在同一个networking服务器上)。 我的服务器+开发机器是64位,并且这两个网站都有相同的应用程序池设置(.NET 4,集成)。 我怎样才能find/解决这个问题? 最好不必为每个站点设置不同的configuration。 而且最好不用改变发行configuration,因为这是工作,我不想冒险改变它。 这两个网站是: Default Website/my_app Beta/my_app 发布的configurationpipe理器具有以下设置: testing版的configurationpipe理器具有完全相同的设置: 例外是: Could not load file or assembly 'MyApp.Domain.Model' or one of its dependencies. An attempt was made to load a program with an incorrect format. Stack Trace: [BadImageFormatException: […]

Windows Vista(64位)的最佳Subversion客户端

我一直在Windows环境中使用TortoiseSVN很长一段时间。 它看起来function非常完整,并且很好地集成到了Windows shell中,更重要的是,对那些很less或根本没有源代码控制经验的同事进行教学是相当痛苦的。 但是 ,由于我们已经转移到Windows Vista的64位,乌龟一直非常bug,似乎会导致explorer.exe的exception和崩溃。 旧版本的软件和最新版本(1.5.1版本13563)都发生这种情况。 我很好奇,如果有人对Windows上运行的其他Subversion客户端(特别是Vista 64位)有build议。 这里的开发人员使用各种文本编辑器,所以使用Visual Studio或Dreamweaver进行SVN并不理想。 我已经听说了Cornerstone的伟大的事情,并会喜欢类似的Windows的东西,如果它存在。 我正在将Vista / explorer问题与Tortoise关联起来,因为它们通常在使用Tortoise中的function时发生。 有时调出“合并”屏幕将导致GUI开始performance非常奇怪,最终挂起或崩溃。 我没有看到1.5.2 – 我正在安装,也许这将解决我的一些问题。

SWT在Windows 64位

我的应用程序抛出下面的exception。 线程“main”中的exceptionjava.lang.UnsatisfiedLinkError:无法在64位JVM上加载32位SW T库。 如何解决这个问题? 什么是需要的jar文件的名称?

32位和64位代码的DWORD有多大?

在Visual C ++中,一个DWORD只是一个无符号长整数,与机器,平台和SDK相关。 但是,由于DWORD是一个双字(即2 * 16),在64位体系结构上还是32位的DWORD?