Articles of c ++

仿函数在C#中是否具有等价物?

是否有相当于C#中的Functors? C#有Func ,委托和匿名方法,但不是所有指向方法的指针? C ++ Functor是一个类,而不是指向方法的指针。

C#无法加载DLL(无法找到模块HRESULT:0x8007007E)

错误:无法加载DLL’x.dll‘:找不到指定的模块。 (HRESULTexception:0x8007007E) 操作系统:Windows 7 我有两个站,Visual Studio 2012,使用.net 4.0; 另一个没有VS安装在VS2012的第一站我有一个C#解决方案,导入了C ++项目。 我正在使用: [DllImport(“x.dll”, CallingConvention = CallingConvention.Cdecl)] [return: MarshalAs(UnmanagedType.I4)] 在这个站上工作。 但是当我移动另一个站(没有安装VS)时,它出现了错误。 如果我安装VS,它正在工作。 出现此问题的可能原因是什么? 关于我可能缺少什么或如何调试此问题的任何想法?

当数据源发生更改时,如何防止DataGridView自动滚动?

我在DataTable的“RowChanged”事件中尝试了这个( http://brainof-dave.blogspot.com/2007/08/turning-off-auto-scrolling-in-bound.html ),该事件是数据源的DataGridView,但无济于事。 基本上,我有一个带有BindingSource的DataGridView,因为它是DataSource。 BindingSource的DataSource是一个包含DataTable的DataView。 每当其中一行中的数据发生变化时,DataGridView就会滚动回到顶部。 有一个简单的解决方案吗?

C Struct的编组作为C#委托的返回值

我试图通过绑定到本机函数的委托的值返回一个小的(8字节)结构,但是在面向.NET Framework 2.0时遇到以下错误(代码似乎在定位4.0+时正常工作) : testclient.exe中发生了未处理的“System.AccessViolationException”类型exception 附加信息:尝试读取或写入受保护的内存。 这通常表明其他内存已损坏。 我怀疑我搞砸了托管类型注释,这样返回值没有被正确编组,但我看不出我做错了什么。 下面是一个小型本机测试DLL和托管客户端的代码,可以重现该问题。 C / C ++ Win32(x86)测试DLL //Natural alignment, blittable, sizeof(StatusBlock) == 8 struct StatusBlock{ std::uint32_t statusA; std::uint32_t statusB; }; /* * When compiled this function stores the 64bit return value in the * eax:edx register pair as expected. */ static StatusBlock __cdecl SomeFunction(std::uint32_t const someVal){ return StatusBlock{ […]

选择适当的IDE

在Windows下开发涉及识别手势和与操作系统交互的项目时,您会推荐以下哪种IDE /语言? 我将使用OpenCV库进行图像处理任务。 之后,我将使用win32 API或.NET框架与操作系统进行交互,具体取决于您建议的工具。 表现也是一个主要问题。 Visual C ++ 2008(使用C ++ / CLI) Visual C ++ 2008(使用本机C ++) visual C#2008(使用.NET框架) Qt的 开发C ++ 代码::块

如何在LinqToSql中执行WHERE … IN …子句?

忍受我,我开始:如何使用WHERE … IN …类型的子句选择多个元素 select * from orders where orderid in (1, 4, 5) 在LinqToSql? 因为他们吓唬我,所以我宁愿没有lambda表达。 提前致谢!

FileSystemWatcher InternalBufferOverflow

当我试图监视网络路径上的文件夹(DFS – 分布式文件系统)时,我收到exceptionSystem.IO.Internal.BufferOverflowException:一次到多个更改。 当FileSystemWatcher监视不使用此文件系统的本地/网络路径时,它可以正常工作。 我能够从本地路径上的1000+文件中获取一个事件,而我没有得到BufferOverflowexception,但是当我将文件复制到DFS上的文件夹时,我甚至无法从一个文件中获取事件(为了澄清这一点,我收到了错误事件…)。 我已经尝试过设置: fileSystemWatcher.InternalBufferSize = 65536; 我不确定这对你有帮助,但路径看起来像这样: \\corpnet\cloud\\Network\testFolder\myFolderToMonitor 编辑:1我不知道为什么路径中有两个双斜杠。 我可以监控没有问题的文件夹,直到\ corpnet \ cloud路径。 一旦我尝试监视任何开始的文件夹,我就会收到错误 …\\Network\… 你的任何提示都表示赞赏。 谢谢

Windows Mobile – 双向呼叫录音(C#)

我需要在Windows Mobile上实现2路(来电和接收)呼叫录音。 我经历了许多论坛和文章,说它是硬件限制,并不是所有手机都可以。 我从http://www.resco.net/pocketpc/audiorecorder/下载了一个应用程序,它在我的手机上运行完美,具有双向录制function。 是否有可能使用.NET CF 2.0(托管或非托管)实现相同的function。尽管托管是优先考虑的。)。 编辑:我发现了这个样本 ,但无法动态地给出录制的长度。 我需要在收到呼叫时启动,并在呼叫结束时停止。 因此,在录制时不知道长度。

如何等待webclient OpenReadAsync完成

我在Windows Phone 8.1应用程序中使用WebClient从Internet下载一些东西。 下面是我在我的应用程序中使用的示例代码 – 我在下面调用方法,但我的webclient没有等待完成读取操作并在OpenReadAsync调用后立即返回。 我怎样才能确保我的方法返回操作必须等到OpenReadCompleted事件完成后? 我见过多个类似的问题,但找不到解决方案。 MyCustomObject externalObj; // my custom object private static void CheckNetworkFile() { try { WebClient webClient = new WebClient(); webClient.OpenReadCompleted += (s, e) => { externalObj = myReadWebclientResponse(e.Result); // my custom method to read the response }; webClient.OpenReadAsync(new Uri(“http://externalURl.com/sample.xml”, UriKind.Absolute)); } catch (Exception) { externalObj = null; } […]

唯一索引约束上的EF Core / Sqlite一对多关系失败

上下文是每个Car都有一个相应的CarBrand 。 现在我的课程如下所示: public class Car { public int CarId { get; set; } public int CarBrandId { get; set; } public CarBrand CarBrand { get; set; } } public class CarBrand { public int CarBrandId { get; set; } public string Name { get; set; } } public class MyContext : DbContext { public […]