Tag: c ++

C#编组来自C ++ DLL的double *?

我有一个带有导出函数的C ++ DLL: extern “C” __declspec(dllexport) double* fft(double* dataReal, double* dataImag) { […] } 该函数计算两个双数组(实数和虚数)的FFT,返回单个双数组,实数为虚数组件交错:{Re,Im,Re,Im,…} 我不知道如何在C#中调用此函数。 我在做的是: [DllImport(“fft.dll”)] static extern double[] fft(double[] dataReal, double[] dataImag); 当我像这样测试它: double[] foo = fft(new double[] { 1, 2, 3, 4 }, new double[] { 0, 0, 0, 0 }); 我收到MarshalDirectiveExceptionexception: 无法封送“返回值”:无效的托管/非托管类型组合。 我假设这是因为C ++ double*与C# double[]不完全相同,但我不确定如何修复它。 有任何想法吗? 编辑:我已经更改了签名,以便我现在传递一些额外的信息: extern “C” […]

托管的无Reg COM服务器将无法激活

我开始使用一个非常复杂的客户端和服务器系统,带有COM引用和其他东西,我一直在减少直到我意识到我甚至无法获得Microsoft示例代码来管理托管COM服务器的免注册COM激活用C#编写。 服务器代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Runtime.InteropServices.ComTypes; using System.Runtime.InteropServices; using System.ComponentModel; namespace ClassLibrary1 { [Guid(“A7AC6D8C-FF17-4D2C-A3B1-2C8690A8EA04”) ,ComVisible(true)] public interface IClass1 { [DispId(1)] string DummyFunction(string inputValue); } [Guid(“81723475-B5E3-4FA0-A3FE-6DE66CEE211C”), ClassInterface(ClassInterfaceType.None), ComDefaultInterface(typeof(IClass1)), ComVisible(true)] public class Class1 : IClass1 { public string DummyFunction(string inputValue) { return inputValue.Substring(0, 1) + ” Inserted ” + inputValue.Substring(1); } […]

从JavaScript调用ASP.NET EventHandler

我有一个传统的ASP.NET Web窗体。 我们曾经有一个按钮定义如下: 在.aspx.cs页面中,我有以下内容: protected void myButton_Click(object sender, EventArgs e) { // Do Stuff } 但是,现在有人决定使用一个奇特的JavaScript框架。 基本上,我只有: function someJSFunction() { // Need to execute “myButton_Click” here. } 如何从这里实际在服务器上执行我的原始方法? 我知道这是一个非常奇怪的问题。 我已经简化了代码,试图直接传达我想要完成的事情。 有人可以告诉我该怎么做? 非常感谢!

全屏DirectX叠加? 是的..再次C#

看起来这个问题在不同的背景下被多次询问过,我在为游戏制作叠加层方面取得了一些进展(这是用于信息数据等)。 我也想让它像Steam和XFire一样可以互动。 我已经设法获得了一个直接游戏的叠加,而它在窗口模式…有点。 我已经看了遍布堆栈溢出和谷歌没有很多运气。 如果需要,我可以用C ++而不是C#来尝试。 我知道C#,但我不认为自己是一个专业人士。 只需要更好的解释。 如果我能够正常工作,我会愿意整理一个精彩的截屏/教程。 注意:我真的想用本机代码而不是库来做这个,但是如果那里有一个好的免费库,我想查看它。 示例: 如何在Windows游戏上叠加图形? http://www.gamedev.net/community/forums/topic.asp?topic%5Fid=359794 C#将重叠forms“锁定”到另一个窗口的位置 更多信息:我确实设法获得一个窗体覆盖游戏窗口,并将其父设置为使用SetParent。 然而,这并不能很好地工作,因为它根本无法全屏工作,并且透明度不起作用。 (基本上有一个透明度键,TopMost设置为TRUE。)我真的想找到一个不同的方法。

如何在Windows Phone 8.1中显示全屏Modal ContentDialog

当用户尝试登录我的应用程序时,我正在显示包含一些TextBlocks和ProgressBar的ContentDialog。 我选择ContentDialog是因为它是模态的并阻止用户,直到应用程序收集所需信息并准备导航到下一页。 以下链接显示可用于Windows Phone 8.1(通用应用程序)的内容对话框类。 下面的代码显示了我编写的用于显示ContentDialog的代码隐藏(我暂时将其放在OnNavigatedTo中进行测试,稍后将其移至适当的通知function) //Progress Bar ProgressBar bar = new ProgressBar(); bar.IsIndeterminate = true; //Downloading Data text TextBlock txt = new TextBlock(); txt.Text = “Downloading data…”; txt.FontSize = 17; txt.Foreground = new SolidColorBrush(Colors.White); txt.HorizontalAlignment = Windows.UI.Xaml.HorizontalAlignment.Center; //This could take a few seconds TextBlock txt2 = new TextBlock(); txt2.Text = “This could take a […]

将DI与构造函数参数结合起来?

如何将构造函数注入与“手动”构造函数参数组合? 即。 public class SomeObject { public SomeObject(IService service, float someValue) { } } 我的DI容器应该解析/注入IService,并且应该指定someValue。 我该如何混合两者?

Windows RT和c#

我需要使用C#和XAML开发Metro风格应用程序,它必须在Windows RT设备和完整的Windows 8操作系统上运行。 所以我只允许在没有任何.net框架程序集的情况下使用WinRT。 我读过这个问题 Microsoft Surface Tablet:为两种设备编写应用程序? 这个非常有用的post: http : //blogs.msdn.com/b/jasonz/archive/2012/06/12/what-you-need-to-know-about-developing-for-windows-on-arm- woa.aspx ,但我仍然有疑问:当我甚至创建一个空白的Metro风格应用程序项目时,我有.NET组合地铁风格。 我是自己删除它还是做错了什么? 如果需要使用像Prism fw移植到WinRT或mvvvm光的东西我该怎么办? 它们是否允许我仅在本机WinRT上开发WOA应用程序? 这些时刻对我来说并不清楚。 你能解释我在ARM上的Windows RT和Windows之间的区别我是否只需要使用WinRT(不带.net)来开发WindowsRT操作系统? 希望您能够帮助我。

从C#调用C DLL

我试图从C#调用一个C DLL,但我没有任何快乐。 DLL的文档提供了VB的示例函数delaration,看起来像; Declare Function TransGeogPt Lib “c:\DLLS\GDAit.dll” (ByVal sGridFile As String, ByVal lDirection As Long, ByVal dLat As Double, ByVal dLong As Double, pdLatNew As Double, pdLongNew As Double, pdLatAcc As Double, pdLongAcc As Double) As Long Declare Function TransProjPt Lib “c:\DLLS\GDAit.dll” (ByVal sGridFile As String, ByVal lDirection As Long, ByVal dLat As Double, […]

将属性映射到集合项

我一直在筛选AutoMapper文档,试图找到一个推荐的解决方案,但一直无法找到它。 假设我有类似以下的课程 public class Foo { public string Note { get; set; } } 此类从客户端填充并映射到以下域对象类 public class Bar { public IList Notes { get; set; } } 注意的地方 public class Note { public string Text { get; set; } // other properties excluded for brevity } 我想在Foo上映射Note字符串属性,首先映射到新的Note实例上的Text属性,然后将该Note添加到Bar上的Notes集合中。 我正在使用ValueResolver来执行此操作的第一部分(将字符串映射到Note的新实例),但我不确定如何处理第二部分(将该项目映射到集合中的项目)。 这样做最干净的方法是什么?

如何仅使用自定义对象显示DataGridView中的某些列

我有一个DataGridView,我需要添加自定义对象。 请考虑以下代码: DataGridView grid = new DataGridView(); grid.DataSource = objects; 使用此代码,我得到一个DataGridView对象,其所有属性都是列。 就我而言,我不想展示所有这些信息; 我想只展示两三列。 我知道我可以设置 AutoGenerateColumns = false 。 但我不知道如何继续进行。 一种选择是隐藏所有我不感兴趣的列,但我认为最好以相反的方式进行。 我怎样才能做到这一点?