这两对属性光从MSDN上看不出什么区别,在到底选用其中哪个属性时给我造成过困扰,后来冥冥中觉得它们之间可能有关联,遂决定实验一下:
Visual Studio Team System 2008 Service Pack 1 针对 Team Foundation Server 2010 的前向兼容更新(安装程序)http://www
关于Task的使用,一直都是半知半解,最近终于有时间详细的看了一遍MSDN,作为备忘录,将心得也记录下来和大家分享。
//检查指定MDI窗体的实例是否存在。 IsExistInstance(this, typeof(WindowsFormsApplication2.Form1)); //或者 IsExistInstance(this, System.Type.GetType("WindowsFormsApplication2.Form1"));
在IM软件上(QQ/MSN之类),人忙或者离开时,可以设置一定的信息或者回复一些消息,来告诉对方主人当前的状态。试想一下,如果老板组织开会,让我介绍最近研究的内容。正在兴致勃勃地讲解当中,突然来一个电话。这时,如果电话能够像IM软件那样,给对方一个提醒,类似于“我正在会议中,稍后回电”这样的消息,那样就不怕了。 在codeplex上有一个开源项目SMSNotifier,可以在它的基础上,来做这方面的应用。下面讲讲实现这个功能所需的一些知识。 Microsoft.WindowsMobile.PocketOut
刚才想了半天文章应该起什么名字,最后决定起名为《线程安全使用》,线程安全这个词很难理解,感觉就像托管这词一样,但是托管翻译成英文是managed,我通常把他翻译成被管理,这样就好理解多了,线程安全也是一样,可以理解为可以被多个线程同时使用的集合,而且同时使用的时候是该集合的值是准确的。
支持正版,做DotNet开发,工具选择不二是Vistual Studio 2005,需要了解各个版本的内容相关的Licence: A:Visual Studio Express Products (a):Visual Web Developer 2005 Express Edition (b):Visual Basic 2005 Express Edition (c):Visual C# 2005 Express Edition (d):Vi
开发者预览版.net 4.5 .NET for Metro style apps Metro风格的应用程序是利用Windows操作系统的强大功能设计的特殊表单元素。 一个称之为.NET APIs fo
注意:控件的类和部分类(包括窗体生成类/窗体设计类)全部要加public来修饰,不然无法在工具箱里找到
char *a = "Peter"; char b[] = "Peter"; char *c = new char[6]; strcpy_s(c, 6, "Peter"); 这里a指向常量区 b指向栈
本文列举了 15 个值得了解的 C# 特性,旨在让 .NET 开发人员更好的使用 C# 语言进行开发工作。 1. ObsoleteAttribute ObsoleteAttribute 适用于除组件、模块、参数和返回值以外的所有程序元素。将元素标记为 obsolete,可以通知用户该元素将在未来的版本中删除。 IsError - 设置为 true,编译器将在代码中使用这个属性时,提示错误。 public static class ObsoleteExample { // Mark OrderDet
本文讲述了一个产品在Windows服务中使用Local System Account运行,并尝试通过CreateProcessAsUser函数以另一个账号启动新进程,但出现错误码1314的问题。通过查询文档,发现原因是Local System Account默认具有权限,而Domain Account没有。解决方法是在Windows的Local Security Settings中给相关用户增加权限,以增加Domain Account的权限,成功解决问题。
受bin牛委托修改并发布,版权归bin牛所有。 Bug/建议提交:zcgonvh@rootkit.net.cn 祝各位马年大吉,财源滚滚。 免责声明: 本程序只用于管理员安全检测,使用前请注意环境与法律法规,因使用不当造成的后果本人不承担任何责任。 已测试的系统: win2003+iis6+.net 2.0 win2008+iis7+.net 4.0 win8+iis8+.net 4.5 注意:此版本最低需要.net 2.0环境,不再支持.net 1.1。如果目标机器是.net 1.1,请换用AspxSp
public interface ICommand { // Summary: // Occurs when changes occur that affect whether or not the command should execute. event EventHandler CanExecuteChanged; bool CanExecute(object parameter); void Ex
要卸载VS系列时才发现卸载VS还是很麻烦的事情,经过研究网上的卸载工具都没什么用,还是要自己手动卸载才彻底些。
这是时隔多年第四篇,主要是因为身在东软受内网限制,好多文章就只好发到东软内部网站,懒的发到外面,现在一点点把在东软写的文章给转移出来。
今天在把以前写的代码生成工具从原来的.NET3.5升级到.NET4.0,同时准备进一步完善,将程序集都更新后,一运行程序在一处方法调用时报出了一个异常: 混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集 其调用的方法是从sqlite数据库中获取原来已经使用过的数据库连接,当时也没注意,就是准备设断点然后单步调试,结果竟然是断点无法进入方法体内,后来仔细看了一下方法体的时候发现了一个问题,就是现有的System.Data.Sqlit
最近发现很多人在论坛中问到如何防止程序被多次运行的问题的,如: http://social.msdn.microsoft.com/Forums/zh-CN/6398fb10-ecc2-4c03-ab25-d03544f5fcc9, 所以这里就记录下来,希望给遇到同样问题的朋友有所参考的,同时也是对自己的一个积累。在介绍具体实现代码之前,我们必须明确解决这个问题的思路是什么的?下面只要分享我的一个思考的这个问题的方式:
文章来源 http://www.cnblogs.com/zhili/p/OnlyInstance.html 转载请注明出处
在博客堂的不是我舍不得 - High CPU in GC(都是+=惹的祸,为啥不用StringBuilder呢?)、 不是我舍不得 - .NET里面的Out Of Memory 看到很多人在问如何分析dump,所以就写下了这篇短文,抛砖引玉。 一、安装 DebuggingToolsforWindows: 从以下 Microsoft 网站下载 DebuggingToolsforWindows: http://www.microsoft.com/whdc/devtools/debugging/installx8
在本人最近的几篇关于事务处理的文章中,从事务处理的整体概念到具体的C#代码的实践操作基本上都已经能满足日常的开发需求。文章中大部分的事务范围类的操作都是局限于数据库,在本人的“.NET简谈自定义事务资源管理器 ”一文中我虽然实现了一个简单的自定义资源管理器,其实也能满足基本的项目需求,核心功能也实现了,但是对于文件事务操作我们是力不从心的。[王清培版权所有,转载请给出署名]
WinHTTP的全称是Microsoft Windows HTTP Services, 它提供给开发者一个HTTP客户端应用程序接口(API), 通过这种API借助HTTP协议给其他的HTTP服务器发送请求.
msdn上有一篇讲解如何用vs2008调试源码的文章:http://blogs.msdn.com/b/sburke/archive/2008/01/16/configuring-visual-stud
Windows Server AppFabric Beta 2是一个包含完全功能的AppFabric版本(This build represents our “feature complete” milestone. That is, it contains all the features that we plan to ship in Windows Server AppFabric v1 by Q3 of 2010),也就是RTM的时间是在2010年的Q3,那么在.net 4/vs2010 RTM的时
WCF 3/3.5 中,当我们要调用一个服务时,必须事先知道该服务的地址,然后通过服务代理用双方约定好的契约与远程的服务进行交互。现在,WCF 4.0中提供了发现服务的支持,当我们再想调用一个服务时,没必要去知道该服务的具体地址,WCF 4.0实现了OASIS的WS-Discovery标准,相关的类定义在System.ServiceModel.Discovery命名空间中。这是一个单独的程序集,所以需要添加对它的引用。只需要利用 System.ServiceModel.Discovery 命名空间下的相关类
----------------201607041343更新----------------
直接定位 transaction 时会定位到EFCore中,这个里面我并没有找到对应的显式Rollback操作,但是经过网络上查询,找到了一个源码中实现了自动 Rollback
在codebehind里的Page_Load事件中改变lable的text值,this.Label1.Text = “为什么没改变”;
从4.0版本开始.NET引入并行编程库,用户能够通过这个库快捷的开发并行计算和并行任务处理的程序。在4.5版本中.NET又引入了Async和Await两个新的关键字,在语言层面对并行编程给予进一步的支持,使得用户能以一种简洁直观的方式实现并行编程。因为在很多文档里针对Async和Await这两个关键字的使用都被称为异步编程,为了更符合大众的阅读习惯,我们使用异步编程这个叫法,意思上和并行编程完全一样。
需求:在 A 应用内启动 B 应用,如果 B 应用未安装则跳转应用商店搜索。 启动方式使用 Uri 启动,本文使用尽可能简单,并且能拿来直接用的代码。不涉及启动后的应用数据交互,如需深入了解,请戳 MSDN:https://docs.microsoft.com/zh-cn/windows/uwp/launch-resume/launch-app-with-uri 1. 获取 B 应用 Uri 以及 B 应用激活事件 如果 B 应用已注册 Uri 的话,那很好,记住它备用,可以跳过看第2点了。如
ASP.NET MVC之 HtmlHelper 在ASP.NET MVC项目的开发中,一般会默认使用Razor视图来进行View层的编写,从而实现高效率的C#/HTML代码的混写。 示例 诸如下述代码
0x1 背景 过去几年,基于宏的文档攻击技术一直是主流,虽然需要用户主动进行确认,但是攻击的成功率依然非常的高。不过,近段时间来,使用Office DDEAUTO技术来传播恶意文件的方法已经越来越流行。该技术很快被FIN7组织、Necurs僵尸网络所采用,用来进行APT攻击,以及用来传播勒索病毒。该方法已经开始替代了用宏技术来传播,成为当前使用office为载体传播病毒的新宠。 0x2 DDE技术介绍 Windows提供了应用程序间数据传输的若干种方法。其中一种就是使用动态数据交换(DDE)协议。DDE协议
今天项目中,有一个要求,需要有一个Textbox(WebControls),不能复制、粘贴 一开始没想到TextBox有这个事件,一直在找,找了N久,只有Window TextBox的,不甘心,打开了msdn,看了看TextBox的Event,没发现什么,随后在看了input type=text的Event 发现一个onpaste 因为是英文饿。。。。不懂,网上查了一下,果然是这个事件。 下面是msdn中onpaste的介绍: Fires on the target object when the u
Asp.net配置文件的配置方式,其实在MSDN里面是写得最清楚的了。可惜之前一直未曾了解到MSDN的强大。
WebClient:http://msdn.microsoft.com/zh-cn/library/system.net.webclient(v=VS.80).aspx(MSDN) 代码: string postString = "arg1=a&arg2=b";//这里即为传递的参数,可以用工具抓包分析,也可以自己分析,主要是form里面每一个name都要加进来 byte[] postData = Encoding.UTF8.GetBytes(postString);//编码,尤其是汉字,事先要看下抓取
在C#中新建一个窗体应用程序。如图,从工具箱向窗体(Form1)中依次拖入button1、button2、button3、button4。
1、在Winform界面的某个按钮点击事件中,编写代码 Debug.WriteLine(“123”); 在“输出”窗口中无输出。
【开发语言】C#, 理论上VB.NET等依赖.NET Framework框架的语言均受此影响
如下图,有很多方法都要重复利用一段代码,所以他需要把它封装成为一个方法去调用,但是 这个键盘按下事件 他不知道怎么封装.
delegate 是一种可用于封装命名或匿名方法的引用类型。(并不是所有的引用类型都是class)
If the function succeeds, the return value is a handle to the mutex object. If the named mutex object existed before the function call, the function returns a handle to the existing object and GetLastError returns ERROR_ALREADY_EXISTS. Otherwise, the caller created the mutex.
Windows10的自适应和交互式toast通知是一个新特性。它可以让你: 创建灵活的toast通知,包括内嵌图片及更多的内容,不在局限于之前Windows 8.1和Windows Phone 8.1提供的toast模板。 关于Windows 8.1和Windows Phone 8.1遗留的模板介绍,请看toast template catalog。 概述 在Windows10中,有以下几个方面,可以自定义已经存在的toast模板。 移动一个限制的模板模型到一个灵活的自适应模板。 有能力在payload中,
在GDI+1.1的版本中,MS加入不少新的特性,其中的特效类Effect就是一个很有吸引力的东西,可惜在VS2010的Image类中,却没有把这个类封装进来(不晓得是不是我没有发现),这个也许MS也有自己的考虑的,毕竟要使用这些函数,必须要求系统是Windows Vista及其以上,而XP的市场占有率在那个时候还比较高的。 不过,作为一种选择,我们有义务把这些函数给哪些已经按照了这些最新系统的客户使用。 其实,这些函数我在VB6下两年前就已经调用过,调用的方式也很简单明了,现在,在学习C#,就要考虑如何将他们封装入C#中。虽然哪些算法的更底层(像素级别的处理实现)实现在很早之前就已经实现,但是能够直接调用现有的函数对于不少朋友来说还是一件很幸福的事情的。 实现这个功能的第一步就是要找到这些函数的声明,这个在MSDN上有C风格的声明,改成C#语言的大部分都不成问题,参考 http://msdn.microsoft.com/en-us/library/ms533971(VS.85).aspx 例如,这个
语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。需要声明的是“语法糖”这个词绝非贬义词,它可以给我们带来方便,是一种便捷的写法,编译器会帮我们做转换;而且可以提高开发编码的效率,在性能上也不会带来损失。
创建灵活的toast通知,包括内嵌图片及更多的内容,不在局限于之前Windows 8.1和Windows Phone 8.1提供的toast模板。
本篇文章介绍可以算是WCF 4.0基于限流(Throttling)的新特性,是在修订《WCF技术剖析(卷1)》的时候编写演示实例的时候发现的。这个特性没有出现在官方文档上面,至少在MSDN上的相关介绍依然是错误的。 一、流量限制简介 WCF是一个基于多线程的消息监听、接收和处理框架体系,能够同时应付来自相同或者不同客户端的服务调用请求,并提供完善的同步机制确保状态的一致性。一方面,我们期望WCF服务端能够处理尽可能多的并发请求,但是资源的有限性决定了并发量有一个最大值。如果WCF不控制进入消息处理系统的并发
在ASP.Net MVC中微软并没有提供类似服务器端控件那种开发方式,毕竟微软的MVC就是传统的请求处理响应的回归。所以抛弃之前的那种事件响应的模型,抛弃服务器端控件也理所当然。
“大菜”:源于自己刚踏入猿途混沌时起,自我感觉不是一般的菜,因而得名“大菜”,于自身共勉。 扩展阅读:c#基础系列1---值类型和引用类型 基本概念 string(严格来说应该是System.Str
大家在实际工作学习C#的时候,可能会问:为什么我们要为一些已经存在的功能(比如Windows中的一些功能,C++中已经编写好的一些方法)要重新编写代码,C#有没有方法可以直接都用这些原本已经存在的功能呢?答案是肯定的,大家可以通过C#中的DllImport直接调用这些功能。 DllImport所在的名字空间 using System.Runtime.InteropServices; MSDN中对DllImportAttribute的解释是这样的:可将该属性应用于方法。DllImportAttribute 属性提供对从非托管 DLL 导出的函数进行调用所必需的信息。作为最低要求,必须提供包含入口点的 DLL 的名称。 DllImport 属性定义如下: namespace System.Runtime.InteropServices { [AttributeUsage(AttributeTargets.Method)] public class DllImportAttribute: System.Attribute { public DllImportAttribute(string dllName) {…} public CallingConvention CallingConvention; public CharSet CharSet; public string EntryPoint; public bool ExactSpelling; public bool PreserveSig; public bool SetLastError; public string Value { get {…} } } } 说明: 1、DllImport只能放置在方法声明上。 2、DllImport具有单个定位参数:指定包含被导入方法的 dll 名称的 dllName 参数。 3、DllImport具有五个命名参数: a、CallingConvention 参数指示入口点的调用约定。如果未指定 CallingConvention,则使用默认值 CallingConvention.Winapi。 b、CharSet 参数指示用在入口点中的字符集。如果未指定 CharSet,则使用默认值 CharSet.Auto。 c、EntryPoint 参数给出 dll 中入口点的名称。如果未指定 EntryPoint,则使用方法本身的名称。 d、ExactSpelling 参数指示 EntryPoint 是否必须与指示的入口点的拼写完全匹配。如果未指定 ExactSpelling,则使用默认值 false。 e、PreserveSig 参数指示方法的签名应当被保留还是被转换。当签名被转换时,它被转换为一个具有 HRESULT 返回值和该返回值的一个名为 retval 的附加输出参数的签名。如果未指定 PreserveSig,则使用默认值 true。 f、SetLastError 参数指示方法是否保留 Win32″上一错误”。如果未指定 SetLastError,则使用默认值 false。 4、它是一次性属性类。 5、此外,用 DllImport 属性修饰的方法必须具有 extern 修饰符。
Windows Phone 7平台不支持Native语言的开发,这困扰了许多游戏和底层应用的开发者。Windows Phone 8 SDK的推出,改善了这个情况。下图就是Windows Pho
领取专属 10元无门槛券
手把手带您无忧上云