Tag: c ++

&& =和|| =运算符

可能重复: 为什么Java没有条件和条件运算符的复合赋值版本? (&& =,|| =) 为什么“&& =”运算符不存在? 今天在工作中我写了以下LOC(b和b1的真实身份是保密:) b &&= b1; // meaning b = b && b1; 我盯着它看了几秒钟,发现没有这样的操作员。 只是为了确定,我点击了编译,但失败了。 为了确定我已经咨询了标准。 是否存在没有此类运营商的具体原因? 我能想到一些: 由于&&的短路评估, b &&= b1和b = b && b1可能不等效。 && =很难看 很少需要&& = 我并不认为拥有这样的运营商是非常有用的,不。 我也没有声称上述三个原因中的任何一个或全部都不足以避免创建该运营商。 我的问题如下:我可能有更严重的理由要监督吗?

从C#启动电子邮件应用程序(MAPI)(带附件)

在过去,我使用MAPISendMail从带有文件附件的C ++应用程序启动Outlook(或任何所需的MAPI电子邮件应用程序)。 (类似于Microsoft Word的发送电子邮件function)。 我需要在C#应用程序中执行相同的操作,并在XP,Vista,Server 2008(以及我认为的Windows 7)上运行时使其工作。 MAPISendMail在Vista / 2008下是不可取的,因为它在Outlook运行时始终返回MAPI_ E_FAILURE,并且托管代码中不支持MAPI。 即使在检查此修复程序后: http : //support.microsoft.com/kb/939718我无法让它可靠地工作。 我知道Microsoft Word和Adobe Reader 9都可以在Vista下使用附件启动Outlook。 AC#兼容的解决方案将是首选,但我会对任何有效的(不必使用MAPI)感到满意。 我似乎无法找到当前的“解决方案”。 Stack Overflow上现有的答案似乎也没有涵盖这一点。 编辑: 我知道MAPI和C#不能一起工作,因此我将采用在Vista和Server 2008中运行的C / C ++解决方案,而不是以管理员身份运行。 请参阅Adobe Reader 9和Microsoft Word作为有效的示例。

C ++和C#互操作性:P / Invoke与C ++ / CLI

在找到C#和C ++之间的互操作方法的过程中,我发现这篇文章解释了P / Invoke。 我读了很多文章声称C ++ / CLI不是精确的C ++,需要一些努力来修改原始的C ++代码。 我想问一下,当我想要从C#对象中使用一些C ++对象(代码/数据)时,最佳方法是什么。 看起来为了使用P / Invoke,我应该提供C风格的API。 这是真的吗? 我的意思是,有没有办法将C ++对象导出到C#,如带有P / Invoke的SWIG? 或者,我是否必须将SWIG用于此目的? 将C ++更改为C ++ / CLI有多难? 与将C ++重写为C#相比,是否值得尝试? C ++设计得很好,所以将它实现到C#并不是很重要。 (关于主题问题)还有其他方法吗? 我的意思是,如果我想使用C ++中的C#代码,有没有办法这样做?

Ninject:将构造函数参数绑定到其他对象的属性

我有一个IConfig对象,其中包含我的应用程序中使用的设置。 此刻,我将整个对象注入到需要它的每个对象的构造函数中,如下所示: public interface IConfig { string Username { get; } string Password { get; } //… other settings } public class Foo : IFoo { private readonly string username; private readonly string password; public Foo(IConfig config) { this.username = config.Username; this.password = config.Password; } } 缺点是IConfig包含大量设置,因为它是从整个配置文件中反序列化的,因此不需要注入整个对象。 我想要做的是将构造函数更改为Foo(string username, string password)以便它只接收所需的设置。 这也使得为测试创建Foo对象变得更加容易(不必仅仅为了创建Foo而设置IConfig )。 我想直接在我的NinjectModule绑定构造函数参数,如下所示: public […]

C ++模板和Java / C#generics之间有什么区别?有什么限制?

我从这里读了一篇有趣的文章/主题/讨论,我得到了以下问题: Java / C#generics有哪些局限性? 使用Java / C#generics不可能使用C ++模板有什么可能? 编辑1 Eric Lippert提出的更多推荐问题 使用C#generics可以实现哪些模式但使用C ++模板却无法实现? C#的真正generics类型和Java的类型擦除generics类型有什么区别?

C ++或C#编程移动条码设备?

我将使用移动条形码扫描仪开发一些应用程序,需要在C ++和C#之间进行选择,以便在扫描仪上进行编码。 我正在考虑Intermec的CK31或类似的WiFi,扫描选择,可编程性和用户界面选项的组合。 它根据规格表运行Windows CE .NET 4.2。 Intermec的开发人员库附带.Net和C ++ SDK。 我以前的Win CE 2003经验是用C ++(MFC GUI,套接字和串行通信)。 我对使用WPF的C#很满意,如果必须的话可以学习其他GUI框架。 这让我有选择语言的自由 – 任何建议都是这样或那样的? 我不是在寻找C ++而不是C#作为语言的答案 – 我的工作效率相似,而且我有足够的经验来创建复杂,强大的C ++解决方案。 我将欣赏的是战争故事或因素,我们的平台评估, 以及这些设备上的编程。 例如:C#apps与C ++应用程序的电池寿命,内存消耗或语言选择的其他环境影响。 如果要避免使用特定版本的.Net CE,那将是一个很好的提示。

在Windows 10中编译问题

我发现了与构建使用C:\ Windows \ System32 \ CertEnroll.dll作为参考的应用程序相关的问题。 在Windows 7上使用VS 2015编译然后在Windows 7计算机上运行时,以下代码可以正常工作。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using CERTENROLLLib; namespace CertTest { class Program { static void Main(string[] args) { try { CX509PrivateKey key = new CX509PrivateKey(); key.ContainerName = Guid.NewGuid().ToString(); } catch (Exception e) { Console.WriteLine(e.Message); } } } } 当您尝试在Windows 10中编译它,然后尝试在Windows […]

如何找出屏幕上当前的DataGridView行?

在我的C#(2010)应用程序中,我在虚拟模式下有一个DataGridView,它拥有数千行。 是否有可能找出目前屏幕上的哪些细胞?

找出Windows服务的运行进程名称.NET 1.1

我们正在使用一个写得很糟糕的Windows服务,当我们尝试从代码中阻止它时,它将挂起。 因此,我们需要找到与该服务相关的进程并将其终止。 有什么建议?

构造函数中的WinRT异步数据加载

我想在ViewModel的构造函数中加载一些数据,但由于WinRT的异步性质,我不得不使用异步方法。 不幸的是我不能有异步构造函数所以我试图将异步方法用作同步方法。 我确信有一种更好的方法可以在应用程序加载时加载数据(异步),但我现在的想法是空白。 我正在寻找一种方法来修复我的应用程序使用我想要的思路,或者使用更合适的方法永久修复它。 代码非常简单(甚至缺少ViewModel)只是为了演示我面临的问题。 public sealed partial class MainPage : Page { public string Data { get; set; } public DataService _dataService { get; set; } public MainPage() { this.InitializeComponent(); _dataService = new DataService(); var t = _dataService.GetData(); Data = t.Result; } /// /// Invoked when this page is about to be displayed in […]