Google [站内搜索]

分类: Win编程预览模式: 普通 | 列表

ComboBox绑定数据源示例

using (SqlConnection conn = new SqlConnection("server=127.0.0.1;database=northwind;user id=sa;password=sa;"))
{
    using (SqlDataAdapter adapter = new SqlDataAdapter("select top 10 ProductID,ProductName from Products", conn))
    {
        DataTable table = new DataTable();

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 5203

C#调用windows图片查看器打开指定图片

System.Diagnostics.Process.Start("rundll32.exe", string.Format("{0} {1}", "shimgvw.dll,ImageView_Fullscreen", @"f:\demo.bmp"));

查看更多...

分类:Win编程 | 固定链接 | 评论: 1 | 引用: 0 | 查看次数: 8416

C#计算文件MD5值

/// <summary>
/// 文件路径
/// </summary>
/// <param name="path"></param>
/// <returns></returns>

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 4364

[C#] Sql Server2000图片存取技术

//存储
private void button1_Click(object sender, EventArgs e)
{
    using (SqlConnection conn = new SqlConnection("Data Source=127.0.0.1;Initial Catalog=Northwind;User ID=sa;Password=sa"))
    {

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 3811
Button、PictureBox、Label等控件默认BackColor属性值是SystemColors.Control,但在一些自定义界面的窗体中,需要这些控件能和窗体融合,就要将其背景为透明,只要将BackColor属性值设置为Color.Transparent(WEB→Transparent)即可:



下边来看复杂一点的情况,界面上有pictureBox1和pictureBox2,pictureBox2在pictureBox1上边,将pictureBox2的BackColor属性值设置为Color.Transparent后,效果如下:

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 7708

C#读取资源文件(Resources.resx)中的内容

平时我们可以将字符串、图像、图标、音频、文件等资源存放在resx文件中,vs会自动生成一个强类型资源类Resources,读取资源文件的内容很简单:

Properties.Resources.资源名称

例如:

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 14648

C#移动无标题栏窗体代码

假如隐藏窗体默认标题栏后,在窗体顶部放置一个Panel控件做自定义标题栏,拖动窗体代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 4594

VB获取窗体上的按钮控件并单击示例

例一:自动点击计算器上的个按钮

Module1.bas:
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 7509

使用FindWindowEx获取多个窗体示例

下边例子获取所有打开的记事本程序,并写入字符串"mzwu.com":

Module1.bas:
Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 6326

矛与盾:用VB打造驱动级键盘记录器

信息监控与隐私保护永远是一对矛盾,在对付各种信息窃取软件上,新技术总是层出不穷。本文介绍一种古老的键盘记录器技术,确实很古老,DOS时代人们就在用了,但是现在它仍然很有效,在键盘过滤驱动失效的情况下,它仍然可用。但是兼容性不佳是它的一个问题,特别是在Windows Vista操作系统上,我不能保证它是可用的。不过在可用的情况下,它能记录我所找到的各种带保护的密码框,包括QQ2008的密码框。

在此之前你还可以看看我以前的一篇帖子,上面介绍了一些Windows键盘响应机制的内容,地址是:http://topic.csdn.net/t/20061224/14/5252514.html

现在的计算机键盘除了传统的PS/2键盘之外还有USB键盘,本文只介绍普通的PS/2键盘,因此本文的示例代码也只支持PS/2键盘,对USB键盘无效。我们知道计算机要得到键盘的信息,必须与键盘进行通信。计算机与外设的通信都是依靠I/O操作完成的,键盘也不列外,当键盘上一个键被按下后,键盘就需要发送一个信息到主机。主机怎么知道键盘什么时候发送了信息呢?有两种方式:纶询和中断。纶询就是说主机不停的询问键盘是否有新的信息,这是以前I/O操作最传统的方式。中断则是一种比较先进的方式,不是由主机来不停的询问键盘,而是由键盘主动告诉主机:有新的信息来了,这样主机就会执行一段中断处理程序,来处理键盘的数据。好了,那么Windows是用哪种方式处理键盘的呢?当然肯定是以中断方式的,因为这样主机不必不断纶询设备,大大提高了效率。事实上Windows中有一个键盘中断处理程序,一旦键盘中断产生后,该程序就会被执行,然后将处理后的数据提供给更高层次的程序使用。键盘中断处理程序是Ring0下的一段代码,在它之上还有更高层的键盘驱动程序,和其它更抽象的硬件管理类驱动程序,再往上走,到了Ring3层,也就是用户层,会首先由user32.dll处理,这样硬件事件会被编码为windows消息,这些消息再发给相应的应用程序。了解了这样一个层次关系后,你就可以很容易判断出一个键盘记录器处于哪一个层次,也就能知道它到底能多大程度上准确记录键盘操作而不被欺骗。这样看来,键盘记录器当然是越底层越好,可惜的是,越底层做起来也越难,当然是废话 ^_^  现在我们知道Windows是靠键盘中断来处理输入的,也就是说,所有在Windows上运行的程序要感知到键盘输入,都是靠着那个中断,除非...

查看更多...

分类:Win编程 | 固定链接 | 评论: 0 | 引用: 0 | 查看次数: 4236