Tag: c ++

使用XNA的Silverlight与纯HTML5相比

我最近决定进入WP7应用程序开发,但实际上还没有开始学习silverlight / xna; 只有C#。 我已经非常了解C ++了。 我的爸爸,为微软工作,最近告诉我学习Silverlight是没有意义的,因为从长远来看,它会变得无关紧要; 由于HTML5的优越性。 但是,我不知道有什么方法可以使用HTML5为WP7开发应用程序,而且我对标记语言几乎一无所知。 我想就此得到一些专业建议,所以这是我的问题: 考虑到我的C ++背景,HTML5路径和WP7 / silverlight / xna路径的优缺点是什么? 在财务方面(WP7 app submition,网站托管等的成本),家庭(C ++)和灵活性(语言能力)?

C ++数据类型与C#数据类型

作为一名学习C ++的专业C#程序员,我想保持数据类型与C#相同。 我写了一个应该有用的头文件。 我想知道的是它是否正确。 // boolean //#DEFINE bool char //#DEFINE true 0x01 //#DEFINE false 0x00 // 8-bit integers #DEFINE byte unsigned char #DEFINE UInt8 unsigned char #DEFINE Byte unsigned char #DEFINE sbyte char #DEFINE Int8 char #DEFINE SByte char // 16-bit integers #DEFINE ushort unsigned short int #DEFINE UInt16 unsigned short int #DEFINE short short […]

Ninject:注入两个相同类型的不同对象

如果我有一个类,它具有相同类型的双重依赖(需要两个不同的实例),如果实例之间的唯一区别是更深的依赖,那么让Ninject执行DI并保持两个图分开的最佳方法是什么? 示例对象图: foo → ClassA → ClassB bar → ClassA → ClassB C类的构造函数: public class C { public C(ClassB foo, ClassB bar) { … } } 那么我如何确保用foo实例化的ClassB作为ClassB依赖foo ,并且bar … bar ? 仅仅是为了某些背景,我有一些需求变化,所以我需要用复合只写存储库替换只写存储库(IAdd) public class CompositeWriteRepository : IAdd { public CompositeWriteRepository(IAdd foo, IAdd bar, Func descriminator) { … } public Add(T entity) { if (descriminator(entity)) { […]

从C ++调用C ++ DLL可以正常工作,但不能从C#调用

我有一个名为tccdvc.dll的DLL,它是SDK的一部分: http://www.commell.com.tw/Download/Driver/Industrial%20Peripheral/Driver/MPX-885/MPX-885%20SDK%20(1.2)/SetupCOMMELL%20MPX-885_20100627.rar DLL是用C ++编写的,检查DLL显示它与链接器版本6.0链接,因此我假设它是用VC ++ 6.0编写的。 DLL没有源代码,只有.lib文件和.h文件。 所有导出的函数都声明为extern“C”(因此没有C ++名称修改)和APIENTRY(所以__stdcall)。 我在Windows XP SP3(32位)上的Visual Studio 2010中编写了一个C ++(非.NET)程序来访问此tccdvc.dll。 这在使用提供的.lib文件和使用LoadLibrary / GetProcAddress时都可以正常工作。 我还编写了一个使用tccdvc.dll的C ++ DLL(我们称之为mywrapper.dll),并且在两个版本中,一个使用.lib文件,另一个使用LoadLibrary / GetProcAddress。 再次,这很好。 这个mywrapper.dll使用__cdecl调用约定。 它包含一个名为InitMyWrapperDLL()的函数,它加载tccdvc.dll。 使用LoadLibrary / GetProcAddress的mywrapper.dll版本的代码如下: typedef int (APIENTRY *TCCPROCTYPE01)(); HMODULE TCCmodule; TCCPROCTYPE01 Proc_TCC_DVCOpen; extern “C” __declspec(dllexport) void InitMyWrapperDLL () { TCCmodule = LoadLibrary(“tccdvc.dll”); Proc_TCC_DVCOpen = (TCCPROCTYPE01)GetProcAddress(TCCmodule, “TCC_DVCOpen”); … } 再次,使用C ++前端,这很好。 […]

从C插件向Unity3D发送字节数据的任何正确方法?

这里只是一个好奇的问题。 当您在iOS平台上为Unity编写插件时,插件具有有限的本机到托管回调function(从插件再到Unity)。 基本上这个文档: iOS插件Unity文档 说明你能够回拨的函数签名是这样的: 只能从本机代码调用与以下签名对应的脚本方法:function MethodName(message:string) C中定义的签名如下所示: void UnitySendMessage(const char * obj,const char * method,const char * msg); 所以这几乎意味着我只能将字符串发送回Unity。 现在在我的插件中,我使用protobuf-net来序列化对象并将它们发送回Unity以进行反序列化。 我已经让这个工作,但通过一个解决方案我觉得很丑陋,并不是很优雅: Person* person = [[[[[Person builder] setId:123] setName:@”Bob”] setEmail:@”bob@example.com”] build]; NSData* data = [person data]; NSString *rawTest = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; UnitySendMessage(“GameObject”, “ReceiveProductRequestResponse”, [rawTest cStringUsingEncoding:NSUTF8StringEncoding]); 基本上我只是将字节流编码为字符串。 在Unity中,我然后获取字符串的字节并从那里反序列化: System.Text.UTF8Encoding encoding=new System.Text.UTF8Encoding(); Byte[] bytes = […]

清除后台堆栈导航Windows 10

我想清除我的导航返回堆栈历史… 我试图使用this.NavigationService.RemoveBackEntry(); 但它没有用。 我怎么能在Windows 10中这样做?

使用FileIO.ReadTextAsync从文件中读取文本时出现exception

尝试使用时读取locl文本文件时出现以下exception var text = await FileIO.ReadTextAsync(file); 与此oplock关联的句柄已关闭。 oplock现在坏了。 (HRESULTexception:0x80070323) 这发生在一个回归unit testing中,它也会在应用程序中不时发生。 应用是XAML + C# 可能导致它的任何想法?!

将C#.NET DateTime.ticks转换为JavaScript中的天/小时/分钟

在我的系统中,我在Ticks中存储一个持续时间,这个持续时间被传递给我的客户端移动应用程序,并且从那里我想将ticks转换为人类可读的forms。 在我的情况下,天,小时和分钟。 我的客户端移动应用程序是使用Javascript编码的,所以这就是我用来将持续时间转换为天/小时/分钟的方法。

C#中的C ++ CString等效

MFC的CString的C#等价物是什么?

如何SWIG std :: string&到C#ref string

我正在尝试将带有std::string引用的C ++函数转换为C#。 我的API看起来像这样: void GetStringDemo(std::string& str); 理想情况下,我希望从C#中看到类似的东西 void GetStringDemoWrap(ref string); 我知道我需要为此创建一个类型图,我尝试了一些使用std_string.i文件的东西,但我不认为我会在任何地方。 有没有人有任何例子。 我是Swig和C#的新手,所以我无法想出任何真实的想法。