我已经将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?

什么时候在C ++中需要#include <new>库?

根据运营商新的参考条目( http://www.cplusplus.com/reference/std/new/operator%20new/ ): 全局dynamic存储操作符函数在标准库中是特殊的: operator new的所有三个版本都在全局命名空间中声明,而不是在std命名空间中声明。 第一个和第二个版本在C ++程序的每个翻译单元中都是隐含声明的:不需要包含它的头文件。 这似乎意味着,在C ++程序的每个翻译单元中,隐含地声明了operator new(placement new)的第三个版本,并且需要包含头<new>以使其存在。 那是对的吗? 如果是这样,那么如何使用g ++和MS VC ++ Express编译器,似乎我可以在我的源代码中使用没有#include <new>的第三版本编译代码? 此外,operator new上的MSDN Standard C ++库引用条目给出了包含#include <new>语句的operator new的三种forms的一些示例代码,但是,如果没有这个包含,那么该示例似乎编译和运行也是一样的? // new_op_new.cpp // compile with: /EHsc #include<new> #include<iostream> using namespace std; class MyClass { public: MyClass( ) { cout << "Construction MyClass." << this << endl; }; ~MyClass( ) […]

java接口如何在内部实现? (虚函数表?)

C ++有多重inheritance。 在汇编级别实现多重inheritance可能相当复杂,但是在线上有很好的介绍如何正常完成(vtables,pointer fixups,thunk等)。 Java没有多个实现inheritance,但是它有多个接口inheritance,所以我不认为每个类都有一个单独的vtable可以实现这一点。 java如何在内部实现接口? 我意识到,与C ++相反,Java是Jit编译的,所以不同的代码段可能会有不同的优化,而不同的JVM可能会做不同的事情。 那么,是否有一些JVM遵循的一般策略,或者是否有人知道特定JVM中的实现? 另外JVM经常虚拟化和内联方法调用,在这种情况下根本就没有涉及到vtable或等价物,所以询问实现虚拟/接口方法调用的实际汇编序列是没有意义的,但是我认为大多数JVM仍然保留一些如果它们没有能够虚拟化所有的东西,那么可以使用类的一般表示。 这个假设是错误的吗? 这种表示看起来像一个C ++的vtable? 如果是的话,接口是否有单独的vtables,这些如何与类vtable相关联? 如果是这样,对象实例可以有多个vtable指针(类/接口vtables),就像C ++中的对象实例一样? 类types和接口types对同一对象的引用总是具有相同的二进制值,或者它们可以不同,就像在C ++中需要指针修正一样? (仅供参考: 这个问题对CLR提出了类似的问题 ,在这篇msdn文章中似乎有一个很好的解释,尽pipe现在可能已经过时了,但我还没有find类似于Java的东西。 编辑: 我的意思是“实现”的意思是“GCC编译器如何实现整数加法/函数调用/等”,而不是“Java类ArrayList实现List接口”的含义。 我知道这是如何在JVM字节码级别上工作的,我想知道的是JVM在加载类文件和编译字节码之后生成的是什么样的代码和数据结构。

是否有Visual Studio的configurationpipe理器的替代/插件?

我有需要删除和重命名视觉工作室的解决scheme/项目configurationselect,有没有任何工具,将有助于这个? 我发现内置的工具非常无益。 例如,当我从解决scheme中删除一个configuration时,它将拒绝删除相关的项目configuration,以防其他地方需要它们。 重命名解决schemeconfiguration也不会重命名它的相关configuration。 必须有一个更好的方法来做到这一点。 那里有其他的工具吗?

文本环绕点(graphviz)

我用下面的代码使用点(graphviz)来创build这个graphics 。 digraph { node [color=Blue,shape=box] 1.1 [label="Frequency of t exceeds upper threshold"] 2.1 [label="t has d-mutant tiles"] 2.2 [label="Valid"] 3.1 [label="Frequency of t exceeds lower threshold"] 3.2 [label="Frequency of t exceeds lower threshold"] 4.1 [label="Insufficient evidence"] 4.2 [label="Valid"] 4.3 [label="t has only one d-mutant that exceeds lower threshold"] 4.4 [label="Are there any d-mutant tiles […]

捕获的.NETexception是意外的空

请参阅下面的说明正在发生的事情 我有一个非常奇怪的问题,捕获的exception是null。 代码使用MEF并尽力报告组合错误。 使用debugging器,我可以看到抛出的exception( InvalidOperationException ),但是当它被下面的代码中的最后一个catch块捕获时, exvariables为null。 在debugging器和正常执行代码时都是如此。 static T ResolveWithErrorHandling<T>() where T : class { try { IocContainer.Compose(Settings.Default.IocConfiguration); return IocContainer.Resolve<T>(); } catch (ReflectionTypeLoadException ex) { // … special error reporting for ReflectionTypeLoadException } catch (Exception ex) { // ex is null – that should not be possible! // … general error reporting for other […]

如何在电话应用程序中包装网站?

我看到很多手机应用程序只是打开一个没有控制的网页。 只是页面。 我正在寻找指导和链接来开始这样简单的事情。

Git使用过多的内存,无法完成

最终更新和修复 :这里的解决scheme原来是两件事的结合:使用Windows Git而不是Cygwin Git作为Graham Borland的 build议 ,而Gitconfiguration设置pack.threads = 1和gc.aggressiveWindow = 150 。 我有一个大的本地Git仓库,一个SVN仓库的git svn clone ,大约有40,000个提交。 我试图在这个仓库上运行git gc ,并且无处可去: $ git gc –auto Auto packing the repository for optimum performance. You may also run "git gc" manually. See "git help gc" for more information. Counting objects: 25966, done. Compressing objects: 100% (25249/25249), done. fatal: Out […]

为什么闰秒会导致问题?

所以在这个时候(但很可能不会很久),Reddit,Meetup,Fark,LinkedIn,Yelp,4Chan都在下降。 Netflix显然也出现了一段时间。 根据Reddit的tweet,他们在2012年6月30日之前遇到了与闰秒有关的问题: https ://twitter.com/redditstatus/status/219244389044731904 “在太平洋标准时间下午5点,我们正在和闰秒有关的一些Java / Cassandra问题,我们正在尽快恢复服务。” 显然,影响其他网站的问题都与闰秒有关。 在阅读维基百科闰秒的文章之后,我想我明白了什么是闰秒……但是我没有得到什么样的奇怪的行为可能发生,如果闰秒不算? 作为编程人员,当我们编写和configuration服务器时,我们应该如何准备闰秒? 我的意思是只有一秒不是吗?

Android:了解APK安装过程

我想了解如何在Android上安装apk的过程,特别是通过adb安装(我正在testing的地方)的Android SDK模拟器。 在search的时候,我发现没有满意的答案,“apk只是复制到/ data / app,并且在你运行的时候安装了,这并不令人满意,因为它没有解释apk的图标是如何出现在菜单上的的问题。 从Windows的背景来看,运行.exe或安装程序来安装程序会修改registry,文件,服务等….我需要了解,如果这或类似的事情发生在Android上安装一个apk。 所以如果任何人可以向我解释什么发生特别是当Android安装一个apk我会不胜感激。 另外,我还想知道Dalvik VM“ zygote ”是否参与了安装,还是发生在较低的Linux内核级别? 我的最终目标是使用strace来安装apk的安装过程,以logging系统修改,文件创build,networking活动和其他感兴趣的事件。