`
xiaoer_1982
  • 浏览: 1816024 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

系统资源调用和shell32.dll简介

阅读更多
shell32.dll是Windows壳Shell相关应用程序接口动态链接库文件,用于打开网页和文件。一个直观的应用,新建一个文件夹-右键-属性-自定义-更改图标,里面默认的就是SystemRoot%\system32\SHELL32.dll这个文件。选择一个图标就可以为这个文件夹创建一个图标了。 xp下它有近8兆,因为里面有很多资源文件,只要用vs的编辑器打开文件,就能看到所有的图标,图片,对话框,鼠标还有字符串资源。通常人们就是通过修改这些资源来改变操作系统的外观资源的,你可以google一下,围绕这个话题,可以玩出很多花样来。 另外他还包含丰富的api函数,主要是系统、资源等交互的调用。比如System.Windows.Forms.FolderBrowserDialog就是调用了shell32.dll的SHGetSpecialFolderLocation函数。 他的api列表在网上也有参考的,比如一个诸多软件都用得windows风格的关于对话框也是通过它来实现的,代码如下:
[DllImport("shell32.dll", EntryPoint = "ShellAbout")] 

        public static extern int ShellAboutA(int hwnd, string szApp, string 

szOtherStuff, int hIcon); 

        private void button1_Click(object sender, EventArgs e) 

        { 

            ShellAboutA(this.Handle.ToInt32(), "每日一帖", "剪刀发布", 0); 

        } 

另一个调用它的方法是通过rundll32.exe来调用,比如cmd命令提示符中输入:rundll32.exe shell32.dll,ShellAboutA jinjazz 还可以可以调用很多类似的系统对话框或者系统命令,包括注销,关机,重启之类的,参考http://blog.csdn.net/jinjazz/archive/2008/04/17/2302095.aspx (其中Control_RunDLL 函数是相当牛的)。 此外,他还可以作为com来引用,运行下面代码,就知道他的方便了。
Shell32.ShellClass sh = new Shell32.ShellClass(); 

        sh.Explore(@"c:\"); 
当然你还可以举一反三,比如模拟 "开始菜单-运行" 操作,以前看到过模拟按键的答案,其实用ShellClass就可以解决。 一些比较好的参考资料可以通过网络得到: http://www.codeproject.com/KB/shell/csdoesshell1.aspx http://www.codeproject.com/KB/shell/csdoesshell2.aspx http://www.codeproject.com/KB/shell/csdoesshell3.aspx
分享到:
评论

相关推荐

    VB编程资源大全(源码 其它3)

    p011_dbprint.zip 数据库打印的例子(7KB) 600,p010_print.zip 一个调用打印机的VB程序范例(8KB) 601,p009_vbSimple35.zip 打印预览(21KB) 602,p008_prview32.zip 在VB中用OLE服务实现打印预览...

    精通WindowsAPI.pdf

    2.3.2 User32.dll............................................................................................................36 2.3.3 Gdi32.dll.............................................................

    如何制作与使用 .RES 资源文件

    '尤其是98系统之下的msvbvm60.dll '先建立一个资源文件, 在 Custom 101 装载 msvbvm60.dll Global winsys$, appdisk$, aa$ Sub Main() On Error Resume Next If App.PrevInstance Then MsgBox "本系统已运行中...

    完美者U盘维护系统V5.0最终版 .rar

    9、系统资源调用这一块我把调用显卡、网卡等驱动整合到一个批处理了。在自带的驱动不够的时候还是蛮有用处的。 10、ie修改为默认不安装,加快了启动速度。启用网卡的时候同时安装ie浏览器。修改ie安装包,完美支持...

    1345个易语言模块

    DLL.ec DLL注入模块.ec DOS命令模块.ec dqf1996.ec EC.EC edb-html.ec EdbServer1.0 客户端.ec EDB、高级表格、XLS互换.ec edb到html-1.0.ec EDB数据库客户端模块 1.0.ec edb 数据库转Excel模块 1.0.ec edb数据库转...

    1350多个精品易语言模块

    DLL.ec DLL注入模块.ec DOS命令模块.ec dqf1996.ec EC.EC edb-html.ec EdbServer1.0 客户端.ec EDB、高级表格、XLS互换.ec edb到html-1.0.ec EDB数据库客户端模块 1.0.ec edb 数据库转Excel模块 1.0.ec edb数据库转...

    易语言模块914个

    动态调用DLL函数.ec 动感图标菜单.ec 动画窗体1.3.ec 十六进制转十进制模块 .ec 十进制转化为十六进制5.ec 压缩加密文件夹.ec 压缩文件夹.ec 双功能自动编号模块.ec 发送消息_全选插入.ec 取CPU特征字.ec ...

    精通Windows.API-函数、接口、编程实例.pdf

    6.5.4 运行时动态获取DLL导出函数地址并调用 189 6.5.5 声明导出函数、创建lib库,为其他模块提供导入表调用接口 190 6.5.6 通过构建导入表调用DLL导出函数 191 第7章 线程同步 192 7.1 基本原理 192 ...

    790个易模块打包下载-2

    系统资源检测模块.ec 显示设置.ec 详细的公农历转换1.0.ec 详细的公农历转换1.2.ec 逍遥带符号液晶.ec 新编码转换大全.ec 信息提示框控件(Tip).ec 星光灭绝1.0.ec 行数.ec 形象大使1.0.ec 修改菜单1.0版....

    790个易模块-3

    系统资源检测模块.ec 显示设置.ec 详细的公农历转换1.0.ec 详细的公农历转换1.2.ec 逍遥带符号液晶.ec 新编码转换大全.ec 信息提示框控件(Tip).ec 星光灭绝1.0.ec 行数.ec 形象大使1.0.ec 修改菜单1.0版....

    790个易模块打包

    系统资源检测模块.ec 显示设置.ec 详细的公农历转换1.0.ec 详细的公农历转换1.2.ec 逍遥带符号液晶.ec 新编码转换大全.ec 信息提示框控件(Tip).ec 星光灭绝1.0.ec 行数.ec 形象大使1.0.ec 修改菜单1.0版....

    易语言模块大全(374个)

    系统资源检测模块.ec 滑块条扩容模块.ec 窗口整容师1.1.ec 窗口整容师1.0.EC 填充树型框.ec 文本操作1.0.EC XP完美模拟专家.EC 溪流关于窗口1.0.ec 菜单加图片模块 1.0.ec 超级列表框存为网页.ec 程序是否运行.EC ...

    java开源包1

    fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的插件,用来对 HTML 文件内容进行清洗和格式化处理。它采用...

    易语言模块大全(共775个模块)

    动态调用DLL模块(1.0).zip 动画窗体1.3(1.3).zip 多种功能模块(1.6).zip 多媒体(测试)(1.0).zip 多彩文字显示模块(1.0).zip 多彩渐变换肤模块2.0(1.0).zip 多种对话框(1.0).zip 大强工作室关于对话框(1.0).zip 定时...

    易语言700模块打包

    动态调用DLL模块(1.0).zip 动画窗体1.3(1.3).zip 多种功能模块(1.6).zip 多媒体(测试)(1.0).zip 多彩文字显示模块(1.0).zip 多彩渐变换肤模块2.0(1.0).zip 多种对话框(1.0).zip 大强工作室关于对话框(1.0)....

    Java资源包01

    fat32-lib 是一个用来读写 FAT 16/32 格式文件系统的纯 Java 类库(纯的)。 Eclipse的HTML格式化插件 Eclipse Tidy Eclipse HTML Tidy 是一款 Eclipse 的插件,用来对 HTML 文件内容进行清洗和格式化处理。它采用...

    精通WindowsAPI 函数 接口 编程实例

    6.5.4 运行时动态获取DLL导出函数地址并调用 189 6.5.5 声明导出函数、创建lib库,为其他模块提供导入表调用接口 190 6.5.6 通过构建导入表调用DLL导出函数 191 第7章 线程同步 192 7.1 基本原理 192 ...

Global site tag (gtag.js) - Google Analytics