自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1)
  • 资源 (16)
  • 收藏
  • 关注

转载 C#中调用Windows API的要点

在.Net Framework SDK文档中,关于调用Windows API的指示比较零散,并且其中稍全面一点的是针对Visual Basic .net讲述的。本文将C#中调用API的要点汇集如下,希望给未在C#中使用过API的朋友一点帮助。   一、调用格式

2011-09-20 23:19:47 127

C# 使用Get和Post请求获取数据

C# 使用Get和Post请求获取数据,Get Post 请求, POST传值

2018-11-10

附件上传.net 源码

附件 上传 .net 源码 程序模块 适合初学者使用

2013-08-26

在窗体退出前弹出对话框C#源代码

在窗体退出前弹出对话框提示是否确认退出,C#源代码,vs2008

2012-04-16

C#通过子窗体刷新父窗体

C#通过子窗体刷新父窗体 代码,vs2008.

2012-04-16

C#使用树视图控件源码

本源码使用C#,VS 2003 ,演示树视图控件的使用方法。可以自定义添加根节点和支节点。

2012-04-16

C#无边框窗体移动的三种方法

1.重写wndProc代码; 2.创建消息; 3.调用API代码:

2011-09-20

C#中的IntPtr

C#中的IntPtr类型称为“平台特定的整数类型”,它们用于本机资源,如窗口句柄。 资源的大小取决于使用的硬件和操作系统,但其大小总是足以包含系统的指针(因此也可以包含资源的名称)。 例如,我们可以在vs2008中用C#做基于OpenCV的图像处理开发,下面两行代码就可以完成打开一幅图像的操作。 IntPtr img = CvInvoke.cvLoadImage(openFileDialog.FileName, Emgu.CV.CvEnum.LOAD_IMAGE_TYPE.CV_LOAD_IMAGE_UNCHANGED); CvInvoke.cvShowImage("打开图片", img);

2011-09-13

C# DllImport的用法

大家在实际工作学习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 修饰符。

2011-09-13

位图处理 BmpProc类源码 c++

# 类中的位图都是兼容于当前显示器颜色格式的DDB位图 # 如果读入的位图格式与当前显示器的颜色格式不同,则读入函数会先将其转换 为兼容于当前显示器颜色格式的位图之后才放入类中 # 对于所有BOOL型返回的函数,TRUE表示成功,FALSE表示失败

2011-09-12

c#操作数据库类-sql

public class DataBase { #region //数据连接字符串 protected static string ConnectionStr = "Server=127.0.0.1;DataBase=Gdd005;User ID=sa;PWD="; SqlConnection Conn = new SqlConnection(ConnectionStr); #endregion //打开数据库 #region public static void Open() { try { SqlConnection Conn = new SqlConnection(ConnectionStr); Conn.Open(); } catch (Exception ex) { MessageBox.Show("打开数据库出错"); } } #endregion #region SQL操作 /// /// 执行SQL语句,返回影响的记录数 /// public static int ExecuteSQL(string SQLString) { SqlConnection Conn = new SqlConnection(ConnectionStr); SqlCommand Cmd = new SqlCommand(SQLString, Conn); try { Conn.Open(); int rows = Cmd.ExecuteNonQuery(); return rows; } catch (System.Data.SqlClient.SqlException E) { throw new Exception(E.Message.ToString()); } } /// /// 执行两条SQL语句,实现数据库事务 ///

2011-09-11

C#导入导出EXCLE

private void ToExcel() { Excel.ApplicationClass MyExcel = new Excel.ApplicationClass(); MyExcel.Visible = true; if (MyExcel == null) { MessageBox.Show("EXCEL无法启动!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Workbook wbook = MyExcel.Application.Workbooks.Add(Type.Missing); Worksheet worksheet = (Worksheet)wbook.Worksheets[1]; //worksheet.Name = "aa"; int rowcount = 0; //行号 int columncount = 0; //列号 //MyExcel.Application.Workbooks.Add(true); //加入表 columncount = this.dataGridView1.ColumnCount; //等于DATA表里行的总数 rowcount = this.dataGridView1.RowCount; //等于DATA表里列的总数 rowcount--; //因为打开dataGridView1时是默认新增的,所以要-1条记录数 //MessageBox.Show(rowcount.ToString()); //Excel文件的格式是从1开始,不是0开始 for (int m = 1; m < columncount; m++) //去除dataGridView1的编号列,即m=1,如m=0出错 {

2011-09-09

解决XP专业版局域网访问故障十八招

   局域网内winXP(professional)的访问是个经常困扰大家的不大不小的问题,许多网友都曾遇到此类故障,现在笔者将个人的一点实际经验总结如下,希望能帮大家彻底解决winXP访问问题

2011-09-09

使用DataSet和DataAdapter插入关联数据

在我使用这个方法开发程序的时候我发现使用DataSet和DataAdapter对象更新关系数据的方法有问题。如果你仅仅更新一个DataTable,那么为DataAdapter创建代码就没多大问题,但是如果你使用多于一个表,那些表之间有parent-child关系,那么更新/插入就要有点手段了,特别是父表有一个IDENTITY/AutoNumber列。在这篇文章里,我会展示一些技术来处理这个问题,特别是你在你的数据库里有AutoNumber/IDENTITY列要处理的时候。

2011-09-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除