Tag: c ++

使用com可调用包装器将一个结构数组从c#传递给C ++

考虑下面的代码,C ++使用com来访问它 namespace MarshalLib { //define an interface for account services [ComVisible(true)] [Guid(“39B8A693-79BB-4638-92DE-245A88720953”)] public interface IAccountStructLookup { AccountStruct RetrieveAccount(int acctId); void UpdateBalance(ref AccountStruct account); Alias[] GetRef(); } //Implement an account struct [ComVisible(true)] [Guid(“DB48C5B6-9646-491A-B030-C0CADCFC03E0”)] public struct AccountStruct { public int AccountId; [MarshalAs(UnmanagedType.BStr)] public string AccountName; [MarshalAs(UnmanagedType.Currency)] public decimal Balance; //[MarshalAs(UnmanagedType.ByValArray, SizeConst = 5)] //[MarshalAs(UnmanagedType.SafeArray)] //public Alias[] […]

如何在asp.net中使用javascript获取所选复选框列表项的值

我正在开发一个asp.net项目,其中我有一个我已经绑定的复选框列表 DataTable dt = new Process_Hotels().SelectAllFacilty(); if (dt.Rows.Count > 0) { cblHotelFacility.DataSource = dt; cblHotelFacility.DataTextField = “Facility”; cblHotelFacility.DataValueField = “ID”; cblHotelFacility.DataBind(); foreach (ListItem li in cblHotelFacility.Items) { li.Attributes.Add(“JSvalue”, li.Value); } } 现在我想在按钮点击时使用javascript获取checkboxlist的选定值ID。为此,我在按钮上有以下javascript代码点击: function test() { var checkList1 = document.getElementById(”); var checkBoxList1 = checkList1.getElementsByTagName(“input”); var checkBoxSelectedItems1 = new Array(); for (var i = 0; i < […]

Windows Phone 8图像绑定

我想将一个image-url绑定到我的Windows Phone 8应用程序中的图像控件,这里是代码: 通过这种方式我得到“ag_e_network_error”。 ImageUrl正在工作,我在不同的页面中使用相同的URL,它们工作正常。 我只在这段代码中得到错误。 我不明白错误的原因。 ListBox Itemsource是一个通用列表。 ImageList.ItemsSource = spotlightInfo.Spots; 斑点对象是一个基因列表。 像这样。 public string Name { get; set; } public string Type { get; set; } public string Text { get; set; } public string ImageUrl { get; set; } 图片url如www.someurl.com/someImage.jpg 对于可能存在问题的地方提供一些帮助将不胜感激。

将C ++ string / wchar_t *转换为C#字符串?

问题:我需要从C ++可执行文件中调用C#dll。 我使用COM,它适用于int,long和bool。 但我不能得到一个字符串…… IDL文件说它是BSTR,但是我无法正确传递它,也没有检索到它。 我尝试使用wchar_t *并像使用VB6一样使用sysalloc,但这似乎不起作用。 有谁知道怎么回事?

WPF – 如何以编程方式备份​​/还原LocalDB – ClickOnce

我有一个应用程序使用EF和LocalDB作为它的数据库,由ClickOnce发布。 这是我第一次使用LocalDB,我不知道如何添加一个function到我的应用程序以编程方式备份​​/恢复数据库。 ClickOnce安装的我的应用程序路径: C:\Users\Mahdi Rashidi\AppData\Local\Apps\2.0\NOL11TLW.9XG\CZM702AQ.LPP\basu..tion_939730333fb6fcc8_0001.0002_fd707bbb3c97f8d3 这是数据库文件安装的位置: C:\Users\Mahdi Rashidi\AppData\Local\Apps\2.0\NOL11TLW.9XG\CZM702AQ.LPP\basu…exe_939730333fb6fcc8_0001.0002_none_8c555c3966727e7f 我该如何备份/恢复数据库? 如何通过ClickOnce进一步更新来保护数据库安全? 非常感谢 :)

将复杂结构编组到c#

我仍然忙着编组一个从c ++到c#的非常复杂的结构。 c ++中的结构如下: typedef struct { DWORD Flags; DWORD TimeCode; DWORD NodeMoving; Matrix NodeRots[NUM_GYROS]; Vector Position; DWORD ContactPoints; float channel[NUM_CHANNELS]; } Frame; 向量: typedef struct { union { struct { float x, y, z; }; float Array[3]; }; } Vector; 矩阵: typedef struct { union { struct { float xx, xy, xz; //This row […]

使用C#运行VBScript

我正在尝试在C#类库项目中执行用VBScript编写的脚本 using System.Web.UI; //reference added at top MSScriptControl script = new ScriptControl(); script.Language = “VBScript”; script.AddObject(“Repository”, connectToDB.GetRepository); 我收到以下编译错误: 错误CS0246:找不到类型或命名空间名称’MSScriptControl’(您是否缺少using指令或程序集引用?) 有任何想法吗?

我可以选择C ++ DLL来调用C#DLL吗?

我有一个C ++ DLL需要在C#类库中调用一个函数(传递一个值,返回一个值)。 我唯一的选择是给C#DLL一个COM接口,并使用IDispatch从C ++调用它? 这是最好的方法吗?

NUnit在程序集中找不到测试

我使用MSTestinheritance了一个程序集,但是这些测试是在构建机器上使用nunit-console运行的(不确定它是如何工作的)。 因此我决定将其排序并将其更改为正确的NUnit测试,但现在nunit-console(或gui)找不到任何测试。 它们使用ReSharper测试运行器运行得很好。 知道可能遗漏的是什么吗?

在应用程序外的Win10中使用C#发送Key Strokes

我试图将一个简单的”CTRL+C”笔划发送到另一个窗口。 想法是从IE/FF/Chrome/IE/Excel/Word获取文本。 无论如何,我试图使用SendKeys.Send()和SendKeys.SendWait()以及InputSimulator的Keyboard.KeyPress() 。 他们都没有抛出exception(好的SendKeys.Send() ,但这是预期的)但它们实际上都没有发送任何东西。 我试图发送信件,但没有任何反应。 我将包含代码片段,看看我是否正在做一些真正密集的事情,但我担心它是一个Win10隔离的东西。 有没有人有幸在Win10中自己的应用程序之外发送击键呢? 的SendKeys: public void DoItDamnYou() { SendKeys.SendWait(“C”); MessageBox.Show(“Press SHOULD have happened”); } InputSimulator public void DoItDamnYouNow() { InputSimulator input = new InputSimulator(); input.Keyboard.KeyPress(WindowsInput.Native.VirtualKeyCode.VK_D); MessageBox.Show(“Now we are in the wrapper.”); } 如果有人有任何想法我会非常感激他们。 谢谢