基于Internet Explorer的WPF WebBrowser控件受到某些键盘和焦点问题以及内存泄漏问题的困扰 。 作为这些问题的替代解决scheme,我们正在考虑在基于HTML编辑的WPF / C#项目中提供用于托pipeChromium而不是WebBrowser控件的可用选项。 之前也有类似的问题。 我已经阅读了答案并完成了自己的研究, 但是我希望从那些在生产质量项目中实际使用以下任何选项的人那里获得更多的反馈意见 : Awesomium和Awesomium.NET 它看起来非常合适,但是我不喜欢这个项目不是开放源代码,而且整个源代码也不容易获得。 另外,对于我们的项目来说,这可能是一种矫枉过正,因为离屏渲染并不是我们真正依赖的。 Chromiumembedded式框架(CEF)和CEF的 .NET绑定 这可能是目前可用的最佳select。 该项目似乎是活跃的,目前与Chrome v27同步。 CEF3使用Chrome多进程架构。 它也看起来像Adobe给它一些认可 。 Google的Chrome框架 虽然它的最初目的是成为IE和Firefox的HTML5插件,但它实际上也是作为独立的ActiveX控件工作的,所以我可以把它包装起来用于WPF。 它公开了一个足够的API来与内部网页交互( onmessage, addEventListener/removeEventListener, postMessage )。 我知道谷歌将停止 Chrome框架,但我认为源将保留在Chromium存储库。 在我们去的时候用最新的Chromium代码来更新它并不难,我们将完全控制它。 WebKit .NET包装 不完全是基于铬,不使用V8引擎,所以它不是一个真正的select。 有没有其他的select,我可能忽略了? 如果有人将他/他的经验与上述任何一种scheme分享给现实生产质量的WPF项目,我将不胜感激。 您是否有任何集成,许可或部署影响? 谢谢。 [编辑]我还要感谢artlung提供了一个慷慨的赏金提供这个问题。
我有一个类有两个构造函数,一个没有参数,一个只有一个参数。 使用带有一个参数的构造函数创build对象可按预期工作。 但是,如果我使用不带参数的构造函数创build对象,则会出现错误。 例如,如果我编译这个代码(使用g ++ 4.0.1)… class Foo { public: Foo() {}; Foo(int a) {}; void bar() {}; }; int main() { // this works… Foo foo1(1); foo1.bar(); // this does not… Foo foo2(); foo2.bar(); return 0; } …我得到以下错误: nonclass.cpp: In function 'int main(int, const char**)': nonclass.cpp:17: error: request for member 'bar' in 'foo2', which […]
我有一个很大的工作空间,有很多C代码的源文件。 虽然我可以在MS VS2005中使用对象浏览器查看函数调用的函数,而在MSVC 6.0中,也只能显示在非graphicstypes的显示中从特定函数调用的函数。 此外,它不显示从main()开始的函数,然后从它调用的函数等等,在叶级函数内部更深。 我需要一个工具,它会给我一个函数调用图,函数callee和caller通过箭头或类似的方式连接,从main()函数开始到函数的最后一级,或者至less显示一个函数调用图C源文件。 如果我能打印这张图,那将是非常棒的。 任何好的工具来做到这一点(不必是免费的工具)?
我只是在学习C,并想知道在我的主要方法中应该使用哪一个。 有什么区别吗? 编辑:那么哪一个更常用?
我正在使用ASP.NET Core应用程序。 我试图实现基于令牌的身份validation,但无法弄清楚如何使用新的安全系统为我的情况。 我通过例子,但他们没有帮助我很多,他们正在使用cookieauthentication或外部身份validation(GitHub,微软,Twitter)。 我的场景是什么:angularjs应用程序应该请求/tokenurl传递用户名和密码。 WebApi应授权用户并返回将由angularjs应用程序在以下请求中使用的access_token 。 我发现了一篇关于在当前版本的ASP.NET中使用ASP.NET Web API 2,Owin和Identity的基于令牌的身份validation实现我所需要的精彩文章。 但对于我如何在ASP.NET Core中做同样的事情并不明显。 我的问题是:如何configurationASP.NET Core WebApi应用程序使用基于令牌的身份validation?
有没有办法使用LINQ执行以下操作? foreach (var c in collection) { c.PropertyToSet = value; } 为了澄清,我想遍历集合中的每个对象,然后更新每个对象的属性。 我的用例是我在博客文章上有一堆评论,我想遍历博客文章上的每条评论,并将博客文章的date时间设置为+10小时。 我可以在SQL中完成,但是我想保留在业务层中。
如何将彩色字符打印到支持它的Linuxterminal上? 如何判断terminal是否支持颜色代码? 我为这个程序使用C ++。
大多数 时候 ,再入的定义是从维基百科引用的: 如果一个计算机程序或例行程序在其先前的调用完成之前可以被安全地调用(即,它可以被安全地同时执行),则被描述为可重入的。 重新计算机程序或程序: 不得包含静态(或全局)非常量数据。 不得将地址返回到静态(或全局)非常量数据。 只能在由调用者提供给它的数据上工作。 不能依靠锁来单身资源。 不得修改自己的代码(除非在自己的唯一线程存储中执行) 不得调用非重入式计算机程序或例程。 如何安全地定义? 如果一个程序可以同时安全执行 ,是否意味着它是可重入的? 提到的六点之间的共同点是什么,我应该记住,检查我的代码重入能力? 也, 所有recursion函数都是可重入的吗? 所有线程安全函数都是可重入的吗? 所有recursion和线程安全的函数都是可重入的吗? 在写这个问题的时候,想到的一点是:像再进入和线程安全这样的术语是绝对的,它们是否有固定的具体定义? 因为,如果不是,这个问题不是很有意义。
SqlConnection在事务中“入围”意味着什么? 这是否意味着我在连接上执行的命令将参与交易? 如果是这样的话,在什么情况下SqlConnection会自动列入一个环境TransactionScope事务? 请参阅代码注释中的问题。 我对每个问题答案的猜测都在括号内的每个问题之后。 场景1:打开连接在事务范围内 using (TransactionScope scope = new TransactionScope()) using (SqlConnection conn = ConnectToDB()) { // Q1: Is connection automatically enlisted in transaction? (Yes?) // // Q2: If I open (and run commands on) a second connection now, // with an identical connection string, // what, if any, is the relationship of […]
我刚刚开始用指针,我有点困惑。 我知道&意味着一个variables的地址,这个*可以在一个指针variables的前面被用来获得指针指向的对象的值。 但是当你使用数组,string或者当你用一个variables的指针副本调用函数时,事情会有不同的工作。 在这个内部很难看到一种逻辑模式。 我应该什么时候使用&和* ?