Tag: c ++

初始化ninject时,’Sequence不包含任何元素’exception

我有一个Ninject的问题,我以前没见过,也不知道如何修复。 我正在使用MVC NuGet包进行MVC 5。 在我的NinjectWebCommon.cs中,有以下方法: public static void Start() { DynamicModuleUtility.RegisterModule(typeof(OnePerRequestHttpModule)); DynamicModuleUtility.RegisterModule(typeof(NinjectHttpModule)); bootstrapper.Initialize(CreateKernel); } 但是,它在尝试执行最后一行时会失败,抱怨“序列不包含任何元素”。 我以前使用Unity进行DI但已更改为Ninject。 有任何想法吗? 先谢谢你,M

.NET DateTime以time_t为单位

有C代码: time1=((double)dt1-25569.0)*86400.0; 它在几秒钟内从TDateTime(VCL)转换为time_t格式,所以最后我需要从.NET DateTime获取time_t格式 关于time_t: 几乎普遍期望它是表示自UTC时间1970年1月1日00:00以来经过的秒数的积分值。 这是由于历史原因,因为它对应于unix时间戳,但是在所有平台的C库中广泛实现。 所以要在.NET中获得秒数我正在做这个(F#): let seconds(dt : DateTime) = (dt.Ticks/10000000L) 或者在C#上(使用更流行的C#标签): Int64 seonds(DateTime dt) { return (dt.Ticks/ ((Int64)10000000)); } // hope it works, but please correct if I mistaken 据我所知,它是从0001 UTC 1月1日12:00:00开始的时间。 因此,要使用time_t格式,我需要在几秒钟内添加1970年。 所以最终函数必须是(F#): let seconds(dt : DateTime) = (dt.Ticks/10000000L) + 31536000*1970 C# : Int64 seonds(DateTime dt) { return (dt.Ticks/ ((Int64)10000000)) […]

强制使用接口而不是声明中的具体实现(.NET)

在C ++中,您可以执行以下操作: class base_class { public: virtual void do_something() = 0; }; class derived_class : public base_class { private: virtual void do_something() { std::cout << "do_something() called"; } }; derived_class重写方法do_something()并将其derived_class private 。 结果是,调用此方法的唯一方法是这样的: base_class *object = new derived_class(); object->do_something(); 如果将对象声明为derived_class类型,则无法调用该方法,因为它是私有的: derived_class *object = new derived_class(); object->do_something(); // –> error C2248: ‘::derived_class::do_something’ : cannot access private […]

带有换行符的程序化文本块条目

如何以编程方式将带换行符的文本添加到文本块? 如果我插入这样的文字: helpBlock.Text = “Here is some text. Here is some more.”; 然后,换行符被解释为字符串文字的一部分。 我希望它更像是如果我在XAML中拥有它会发生什么。 我似乎无法用WPF方式做到: helpBlock.Inlines.Add(“Here is some content.”); 由于Add()方法想要接受“inline”类型的对象。 我无法创建一个Inline对象并将其作为参数传递,因为它由于其保护级别而“无法访问: helpBlock.Inlines.Add(new Windows.UI.Xaml.Documents.Inline(“More text”)); 我没有看到以编程方式添加运行的方法。 我可以找到大量的WPF示例,但WinRT没有。 我也发现了很多XAML示例,但C#没有。

使用c#查找与Windows服务关联的实际可执行文件和路径

我正在为我公司的一个产品安装程序。 该产品可以多次安装,每个安装代表一个单独的Windows服务。 当用户升级或重新安装程序时,我想查找正在运行的服务,找到属于该产品的服务,然后找到该服务的可执行文件及其路径。 然后使用该信息查找用户希望升级/替换/安装/等服务的哪一项服务。 在下面的代码示例中,我看到了服务名称,描述等,但没有看到实际的文件名或路径。 有人可以告诉我我错过了什么吗? 先感谢您! 我的代码如下: ServiceController[] scServices; scServices = ServiceController.GetServices(); foreach (ServiceController scTemp in scServices) { if (scTemp.ServiceName == “ExampleServiceName”) { Console.WriteLine(); Console.WriteLine(” Service : {0}”, scTemp.ServiceName); Console.WriteLine(” Display name: {0}”, scTemp.DisplayName); ManagementObject wmiService; wmiService = new ManagementObject(“Win32_Service.Name='” + scTemp.ServiceName + “‘”); wmiService.Get(); Console.WriteLine(” Start name: {0}”, wmiService[“StartName”]); Console.WriteLine(” Description: {0}”, wmiService[“Description”]); […]

如何向datagridview添加新行?

我有DataGridView填充数据源(SQL)的数据。 现在我想添加一个新行,但我不能,因为新数据无法添加到有界DataGridView … 我试图: dataGridView1.Source = null; dataGridView1.Rows.Add(“1”); 但它清除了我之前在表格中的数据。 怎么做,添加新行而不删除以前的数据?

在ASP.NET Web表单中使用网络摄像头扫描QR码

我有实施网站的最后一年项目。 我遇到了实施Scan Qr Codefunction的问题。 我需要在我的“Scan.aspx”中创建一个二维码扫描器,此页面将显示一个使用网络摄像头的摄像头。 如果是手机,它将使用手机相机扫描QR码图像。 我不知道如何编码。 我的项目是ASP.net Web应用程序。 请提供任何源代码或解决方案,我将自己编写代码。 先谢谢了。 我需要的最终结果与此类似,它可以自动扫描二维码。 https://www.the-qrcode-generator.com/scan

C ++回调到C#函数期间的NullReferenceException

开发商! 我有一个非常奇怪的问题。 我的项目有用C ++编写的DLL和用C#编写的GUI。 我已经实现了一些互操作性的回调。 我计划在某些情况下C ++ DLL会调用C#代码。 它有效…但不长,我不明白为什么。 在C#部分的注释中标出了问题 这里是简化示例的完整代码: C ++ DLL: #include #define WIN32_LEAN_AND_MEAN #include BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: case DLL_THREAD_ATTACH: case DLL_THREAD_DETACH: case DLL_PROCESS_DETACH: break; } return TRUE; } extern “C” { typedef void (*WriteSymbolCallback) (char Symbol); WriteSymbolCallback Test; […]

将日期参数传递给对MVC操作的ajax调用的安全方法

我有一个MVC操作,它的一个参数是一个DateTime ,如果我传递“17/07/2012”,它会抛出一个exception,说param为null但不能01/07/2012值,但如果我通过01/07/2012它被解析为Jan 07 2012 。 我将日期传递给DD/MM/YYYY格式的ajax调用,我应该依赖MM/DD/YYYY格式,尽管在web.config配置了文化? 这是一个简单的方法,只有一个日期参数。

PInvoking C ++ DLL时出现AccessViolationException(cdecl调用约定问题?)

我整天都在研究这个问题,而且我并不聪明: 我有一个C#DLL,PInvokes C ++ DLL中的方法。 在调试模式下编译时我没有遇到任何问题,但在Release模式下编译时,我得到一个AccessViolationException。 谷歌搜索这个问题告诉我,它可能是不合规的调用约定的问题。 代码现在在C#中看起来像这样: [return: MarshalAs(UnmanagedType.U1)] [DllImport(“Native.dll”, CallingConvention = CallingConvention.Cdecl)] internal static extern Boolean AMethod(Int32 mode, byte frame); 在C ++中: extern “C” { DLL_EXPORT bool AMethod(int mode, BYTE frame) { … } } 我已经在VS2010中使用__cdecl调用约定设置了C ++项目,但我仍然得到了AccessViolationException,我不知道我还能做些什么。 我应该注意我的C ++ DLL使用第三方DLL,我不知道他们使用什么调用约定。 任何帮助,将不胜感激! 哦,我的开发机器上没有例外,只在我的目标系统上。