易截截图软件、单文件、免安装、纯绿色、仅160KB

利用WM_COPYDATA在应用程序间传递数据(C#)

利用WM_COPYDATA在应用程序间传递数据很简单,开销也小
一、传递数据部分
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Windows.Forms;
namespace ThreeTorches
{
    public struct Copydatastruct
    {
        public IntPtr dwData;
        public int cbData;
        public IntPtr lpData;
    }
    public static class XianaoMessage
    {
        [DllImport("User32.dll", EntryPoint = "FindWindow")]
        public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
        [DllImport("user32.dll", EntryPoint = "FindWindowEx")]
        public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow);
        //发送数据的消息常数
        public const int WmCopydata = 0x4A;
        /// <summary>
        /// Win32的发送消息函数
        /// </summary>
        /// <param name="hwnd">接收消息的窗口句柄</param>
        /// <param name="msg">消息ID</param>
        /// <param name="wparam">高位信息</param>
        /// <param name="lparam">低位信息</param>
        /// <returns></returns>
        [System.Runtime.InteropServices.Dll


相关文档:

C#中ref参数与out参数的区别

先贴代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Ref_and_Out_test
{
    class Program
    {
        static void Main(string[] args)
      & ......

C#中String.Empty与""

    这两个在一般情况下是相等的,但是系统处理机制上却有所不同。
    ""会在内存里划一块长度为0的存储空间,而String.Empty内存并不为它分配空间,所以无论性能还是速度上String.Empty都优于""。
    曾经看过一篇判断字符串空值的性能文章,老外写的国人翻译,文章大意 ......

《C#图解教程》读书笔记第16章——事件

这本书讲解
C#
语言十分详细,我将其中的重要内容整理成条款,以备忘。
1.      
事件是在满足某个特定条件时发生的,触发
(raise)
事件的对象称为发布者
(publisher)
,对这个事件进行响应的对象称为订阅者
(subscriber)
。事件处理程序是注册到事件的方法,可在任何类或者结构 ......

C# 使用PlaySound在移动设备上播放声音

使用 PlaySound 在移动设备上播放声音文件。此代码使用 System.Runtime.InteropServices
调用 Compact Framework 的 CoreDll.DLL 的 PlaySound 方法
关于播放实现:
        //播放标志
        private enum Flags
        {
 &n ......

浅析工厂模式(C#)

我以为,在所有模式中,最简单、最常用的就是工厂模式了(包括抽象工厂)。
工厂模式和抽象模式的区别在于,工厂模式是通过参数(一般叫型别码)来动态生成对象,而抽象工厂必须了解上下文才能调用相应的对象。实例代码如下:
一、工厂模式
public class Factory
{
public static object Create(int type)
{ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号