文档库 最新最全的文档下载
当前位置:文档库 › wxWidgets开发环境在VS 2005下的搭建

wxWidgets开发环境在VS 2005下的搭建

wxWidgets开发环境在VS 2005下的搭建
wxWidgets开发环境在VS 2005下的搭建

wxWidgets开发环境在VS 2005下的搭建1、网上下载wxWidgets的安装包

从wxWidgets的官方网站(https://www.wendangku.net/doc/0314000361.html,/downloads/)下载wxWidgets的windows版本wsMSW版本的,下载之后,解压缩安装。

2、编译wxWidgets库文件

打开安装wxWidgets的目录即($(wxWidgetsinstallpath)代表wxWidgets 的安装目录),在安装目录找到build目录,然后在build目录下找到msw目录,打开msw目录,用vs2005打开wx.dsw文件。这个时候

会提示是否转换,如图-1所示:

图-1

选择Yes To All选项。

wxWidgets编译的版本主要有静态库和动态库,而动态库和静态库中又分为Unicode码的和ANSII码的。下面来介绍一下静态库的ANSII

码版本的。选择编译版本为Debug版本的,然后进行编译。wx.dsw 中有20个工程,当20个工程编译完成之后,这个时候会在安装目录下的lib目录下生成vc_lib目录,vc_lib目录下有刚才编译生成的库文件。

3、配置库文件和头文件目录

打开vs 2005,选择Tools->Options,如图-2所示

图-2

选择Projects and Solutions选项,如图-3所示

图-3

在Show directories for选项中选择Include files

加入头文件的路径

$(wxWidgetsinstallpath)\lib\vc_lib\mswd $(wxWidgetsinstallpath)\include

在Show directories for选项中选择Library files

加入库文件的路径

$(wxWidgetsinstallpath)\lib\vc_lib

4、建立wxWidgets工程

建立一个空的win32 application工程(一定要是application工程哦,不可以是Console工程)。

然后在该工程中添加一个头文件wx_pch.h,内容如下

#pragma once

#if(defined(USE_PCH) && !defined(WX_PRECOMP))

#define WX_PRECOMP

#endif// USE_PCH

#include

#ifdef__BORLANDC__

#pragma hdrstop

#endif

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#ifndef WX_PRECOMP

#include

#endif

#ifdef USE_PCH

#endif// USE_PCH

接着进行添加一个类CBaseApp类,然后修改CBaseApp类,让它继承wxApp类。然后在CBaseApp类中添加虚函数virtual bool OnInit(),BaseApp.h

#pragma once

#include"wx_pch.h"

#include"MainFrame.h"

class CBaseApp:public wxApp

{

public:

CBaseApp(void);

public:

virtual ~CBaseApp(void);

virtual bool OnInit();

virtual void ExitMainLoop();

//主框架的指针

CMainFrame* m_pMainWnd;

};

IMPLEMENT_APP(CBaseApp)

DECLARE_APP(CBaseApp)

接着添加一个CMainFrame类,该类继承wxFrame,其代码如下MainFrame.h

bool CBaseApp::OnInit()

{

wxString strTitle = wxT("应用程序窗口");

if (NULL == m_pMainWnd)

{

m_pMainWnd = new CMainFrame(strTitle);

}

m_pMainWnd->Centre();

m_pMainWnd->Show();

return true;

}

BaseApp.cpp

CBaseApp::CBaseApp(void):

m_pMainWnd(NULL)

{

}

CBaseApp::~CBaseApp(void)

{

}

void CBaseApp::ExitMainLoop()

{

if (NULL != m_pMainWnd)

{

delete m_pMainWnd;

m_pMainWnd = NULL;

}

}

bool CBaseApp::OnInit()

{

wxString strTitle = wxT("应用程序窗口");

if (NULL == m_pMainWnd)

{

m_pMainWnd = new CMainFrame(strTitle);

}

m_pMainWnd->Centre();

m_pMainWnd->Show();

return true;

}

MainFrame.cpp

BEGIN_EVENT_TABLE(CMainFrame,wxFrame)

END_EVENT_TABLE()

CMainFrame::CMainFrame(const wxString& strtitle): wxFrame(NULL,wxID_ANY,strtitle)

{

//设置显示图标

LoadAppIcon();

}

CMainFrame::~CMainFrame(void)

{

}

void CMainFrame::LoadAppIcon(void)

{

wxIcon Icon;

//图片的路径

wxString IconPath = wxT("D:\\Icon.ico");

//如果加载成功则设置图标

if (Icon.LoadFile(IconPath,wxBITMAP_TYPE_ICO))

{

SetIcon(Icon);

}

}

接下来打开工程属性

Configuration Properties->General

选择字节编码为多字节编码

接下来设置

Configuration Properties->C++->Preprocessor 在Preprocessor Definitions中输入

WIN32

_DEBUG

_WINDOWS

__WXMSW__

__WXDEBUG__

_MBCS

NOPCH

在Configuration Properties->Linker->Input 中的Additional Dependencies中输入

wxmsw28d_xrc.lib

wxmsw28d_html.lib

wxmsw28d_adv.lib

wxmsw28d_core.lib

wxbase28d_xml.lib

wxbase28d.lib

wxtiffd.lib

wxjpegd.lib

wxpngd.lib

wxzlibd.lib

wxregexd.lib

wxexpatd.lib

winmm.lib

shell32.lib

comctl32.lib

ole32.lib

oleaut32.lib

uuid.lib

rpcrt4.lib

advapi32.lib

wsock32.lib

odbc32.lib

当输入完成之后,大功告成啦,你就可以编译程序了,祝你成功。

实验一mini2440裸板驱动开发环境搭建.

实验一mini2440裸板驱动开发环境搭建 讲师:杨行 【实验目的】 1、了解minicom配置串口通信参数的过程,掌握利用minicom进行传输文件方法 2、了解网络文件系统nfs的配置,掌握利用nfs进行文件的传输和异地运行目标板程序 3、掌握tftp的使用方法 【实验原理】 一、安装编译器 1. mkdir /usr/local/arm 2. tar xjvf arm-linux-gcc-4.4. 3.tar.bz2 –C /usr/local/arm 3. vim /etc/profile + PATH=/usr/local/arm/4.4.3/bin:$PA TH 4. source /etc/profile 5. arm-linux-gcc -v 注意:1 Ubuntu 14.04 64位系统无法运行32位可执行文件,需要安装一个32位兼容库lib32z1 2Ubuntu 12.04 64位系统安装ia32-libs 3sudo apt-get install libstdc++6 4sudo apt-get install lib32stdc++6 二、minicom的使用 1. 安装:sudo apt-get install minicom 2. 配置:minicom -s 3. 使用: 命令: ctrl a + q quit ctrl a + w lineWrap ctrl a + z help 1、串口通信参数的设置 确认USB转串口工具是否已经连接到电脑上,如果连接到电脑上,则: ls /dev/ttyUSB0

如果已经确认了ttyUSB0已经存在,则: 首先运行minicom,由于minicom是通过串口来工作的,所以要通过minicom程序来对串口通信参数进行设置。启动minicom的设置窗口:在linux的终端中输入“minicom –s”,然后,按下回车键。 spring@spring-virtual-machine:~$ sudo minicom -s “-s”选项调出配置信息。下面显示的就是配置的菜单。

windows驱动开发和调试环境搭建

Windows驱动开发和环境搭建 【文章标题】: Windows驱动开发和调试的环境设置 【文章作者】: haikerenwu 【使用工具】: VC6.0,VMware6.0.3,Windbg 【电脑配置】: 惠普笔记本xp sp3 (一)VMWare安装篇 VMWare的安装一路Next即可,关于其序列号,百度一下就能找到,虚拟机安装完成之后,需要安装操作系统,我在虚拟机中安装的是windows xp sp2系统。 点击“文件”----“新建”----“虚拟机” 进入新建虚拟机的向导,配置虚拟系统参数

选择虚拟系统文件的兼容格式(新手推荐选择默认选项) 按照默认设置继续点击下一步,选择好您需要的操作系统,此处我选择的是Windows XP Prefessional。 设置虚拟机名称和虚拟操作系统安装路径,我单独空出来一个F 盘,将虚拟机和虚拟操作系统全部装在该盘。

配置网络模式(推荐选择NA T,一般主机不用做任何的设置虚拟机就可以利用主机上网)。 配置虚拟磁盘的容量。在这里可以直接单击完成,来完成基本操作设置,磁盘默认空间是8GB,用户可以根据自己的实际使用情况来调整大小,也可以自定义分区。

操作完成之后,在“VM”菜单下有个“setting。。。”菜单,点击此菜单,在CD-ROM中选择合适的选项,我使用的是Use ISO image 选项,将我的xp sp2操作系统的ISO映像路径设置好,安装操作系统。点击ok之后,启动虚拟机,即开始安装操作系统,安装过程跟普通装机过程相同。安装完成之后,启动操作系统,然后在VM菜单下点击“Install VMWare Tools”,把虚拟操作系统的驱动装好。 (二)VMWare设置篇

Windows驱动开发培训

Windows驱动开发培训 培训流程: 一、基础知识 在开始驱动开发之前,您应该知道操作系统原理以及驱动程序是如何在操作系统中进行工作的,了解这些基本原理将有助于您做出正确的设计决策并简化您的开发过程。 1、了解Windows操作系统构造\\ 可以链接进去 2、安装WDK,参考相关文档,熟悉WDK的内容\\ 可以链接进去 二、Windows驱动开发\\ 可以链接进去 一、基础知识 在开始驱动开发之前,您应该知道操作系统原理以及驱动程序是如何在操作系统中进行工作的,了解这些基本原理将有助于您做出正确的设计决策并简化您的开发过程。 1、了解Windows操作系统构造 (1)培训目标 深入了解Windows操作系统的系统结构以及工作原理 (2)培训内容 阅读书籍《深入解析Windows操作系统》的第3、4、6、7、9章,重点关注第九章“I/O系统” (3)培训任务 ①掌握Windows操作系统的系统结构 ②理解ISR、IRP、IRQL、DCP等概念的含义 ③了解注册表的用法,掌握注册表数据的查看和修改方法 ④了解进程和线程的内部机理以及线程的调度策略 ⑤了解I/O系统的内容,理解I/O请求以及I/O处理过程 注:以上相关内容,请在一周内完成。

2、安装WDK,参考相关文档,熟悉WDK的内容 (1)培训目标 了解WDK的安装过程,熟悉WDK的编译环境,掌握如何使用WDK的相关帮助文档;了解WDM驱动程序的基本结构 (2)培训内容 ①.阅读文档\\10.151.131.12\book\windows\MSWDM.chm,掌握WDM驱动程序的基本结构以及基本的编程技术。 ②.参考WDK的帮助文档:WDK documentation ,了解WDK的基本内容 (3)培训任务 ①理解分层驱动结构的含义,掌握设备和驱动程序的层次结构 ②理解“驱动对象”和“设备对象”的概念 ③理解2个基本例程:DriverEntry 和addDevice ④了解IRP的结构以及IRP处理的流程 ⑤初步了解I/O的控制操作 注:以上相关内容,请在一周内完成。 二、Windows驱动开发 学习如何基于WDK进行驱动程序的开发 1、培训目标 (1)学会根据WDK开发一个基本的Windows驱动程序和测试程序 (2)学会利用不同的IOCTL方式在内核模式和用户模式之间进行通讯 (3)学会如何在内核模式下和用户模式下访问注册表 (4)利用WinDbg跟踪程序,学会使用WinDbg进行调试 2、培训内容 (1)阅读\src\general\ioctl中的示例代码 (2)build并运行应用程序和驱动程序

驱动SYS开发总结 - stretch的专栏 - CSDNBlog

驱动SYS开发总结 1.驱动简介 1.1.驱动是什么 计算机的外部设备需要和计算机进行数据交换,生产外部设备的厂家如何使计算机和自己的设备交换数据呢,就是通过驱动程序,从设备中读入到计算机中,早期的Win3.1,Win9x设备驱动是vxd,Win NT是kdm, Win2k 统一发展成wdm模式。 1.2.sys文件 sys文件是驱动程序的可执行代码,其扩展名为.sys,驱动程序安装后保存在windows/system32/drivers目录中。 对于PnP设备,在设备插入后,sys文件会被windows装载到内存中,系统线程调用sys中的函数来和设备进行通信。 1.3.inf文件 inf文件是安装设备驱动程序时必须使用的文件,其扩展名为 .inf,驱动程序安装后保存在windows/inf目录中。 系统使用一个扩展名为INF的文本文件来控制与安装驱动程序相关的大部分活动。INF文件应该由驱动程序开发人员随驱动程序一起提供。通过INF文件可以告诉操作系统哪一个文件需要复制到用户硬盘上,应该增加或修改哪一个注册表项,如此等等。 inf中提供产品设备的产品id,以及对应的sys文件名,驱动class名, class guid, https://www.wendangku.net/doc/0314000361.html,b-client driver HOST 与DEVICE, ENDPOINT与PIPE 我们进行的USB驱动开发大多数是usb-client driver,系统厂商大多数都已经把USB类驱动做好,我们则是在类驱动之上开发针对自己设备的驱动,习惯上称做usb-client driver,其在整个软件构架中地位如下:UHCD--USBD--USB CLIENT DRIVER--DLL OR APP usb-client driver仍然遵守WDM模型,是WDM驱动。因为要支持PnP,所以要很小心的处理自己的资源以及IRP, 随时准备处理拔出或者插入设备的情况; 电源处理不当也会使系统无法唤醒。 需要了解的知识:wdm,usbdi,our usedevice, wdm: 目标: a, 能提供接口函数, b, 能实现pnp,电源消息处理,wmi,i/o等处理, usbdi: urb,irp,等时,中断,控制,批传输的概念

Windows驱动开发入门

接触windows驱动开发有一个月了,感觉Windows驱动编程并不像传说中的那么神秘。为了更好地为以后的学习打下基础,记录下来这些学习心得,也为像跟我一样致力于驱动开发却苦于没有门路的菜鸟朋友们抛个砖,引个玉。 我的开发环境:Windows xp 主机+ VMW ARE虚拟机(windows 2003 server系统)。编译环境:WinDDK6001.18002。代码编辑工具:SourceInsight。IDE:VS2005/VC6.0。调试工具:WinDBG,DbgView.exe, SRVINSTW.EXE 上面所有工具均来自互联网。 对于初学者,DbgView.exe和SRVINSTW.EXE是非常简单有用的两个工具,一定要装上。前者用于查看日志信息,后者用于加载驱动。 下面从最简单的helloworld说起吧。Follow me。 驱动程序的入口函数叫做DriverEntry(PDRIVER_OBJECT pDriverObj,PUNICODE_STRING pRegisgryString)。两个参数,一个是驱动对象,代表该驱动程序;另一个跟注册表相关,是驱动程序在注册表中的服务名,暂时不用管它。DriverEntry 类似于C语言中的main函数。它跟main的差别就是,main完全按照顺序调用的方法执行,所有东西都按照程序员预先设定的顺序依次发生;而DriverEntry则有它自己的规则,程序员只需要填写各个子例程,至于何时调用,谁先调,由操作系统决定。我想这主要是因为驱动偏底层,而底层与硬件打交道,硬件很多都是通过中断来与操作系统通信,中断的话就比较随机了。但到了上层应用程序,我们是看不到中断的影子的。说到中断,驱动程序中可以人为添加软中断,__asm int 3或者Int_3();前者是32位操作系统用的,后者是64位用的。64位驱动不允许内嵌汇编。下面是我的一个helloworld的源码:

DDK驱动开发笔记

DDK驱动开发笔记 1、windows驱动分为NT式驱动和WDM式驱动,前者为非即插即用,后者为即插即用驱 动。需要头文件分别为NTDDK.h和WDM.h 2、驱动的入口函数均为extern "C" NTSTA TUS DriverEntry(IN PDRIVER_OBJECT pDriverObject, IN PUNICODE_STRING pRegistryPath),它由I/O管理器负责调用,前参数为传递进来的驱动对象,后参数为Unicode字符串,指向此驱动的注册表。 3、驱动程序向windows的I/O管理器注册一些回调函数,回调函数是由程序员定义的函数, 由操作系统负责调用,只要把地址告诉操作系统即可如:pDriverObject->DriverUnload=HelloDDKUnload; 4、使用CreateDevice函数创建驱动设备对象如:CreateDevice(pDriverObject);返回 NTSTA TUS类型 5、KdPrint是一个宏,用于打印输出信息,在Checked中会使用DbgPrint代替,在Free版 本中无效果,用法和TRACE一致。 6、Windows的设备管理是使用线性链表进行管理,每一个节点记录了设备对象的地址,每 次要对指定驱动进行操作,就必须先遍历设备对象链表。 7、设备对象函数NextDevice域记录下一个设备对象的地址,IoDeleteDevice用于删除设备 对象如:IoDeleteDevice(pDevExt->pDevice),IoDeleteSymbolicLink用于删除设备符号链接。 8、DDK环境编译驱动源程序,需要使用两个自己创建的脚本makefile和Sources,最好使 用二进制文本格式,makefile的内容固定为:!INCLUDE $(NTMAKEENV)\makefile.def。 sources文件记录了驱动的名称、驱动类型、编译输出目录、include目录、指定源文件。 编译好的文件会再工程目录的objchk_wxp_x86\i386文件夹里生成.sys文件。 9、对于使用其他编译环境,只能使用VS编译环境,vc6编译环境只能支持到win2000的 DDK。 10、配置VS+DDK+DDKWizard: 11、使用DriverMonitor安装驱动,对于NT驱动,在设备管理器中默认是隐藏的(可 更改),本软件用于测试驱动。 12、WDM中使用AddDevice回调函数创建设备对象并由PNP(即插即用plug and play) 管理器调用,然后设置对IRP_MJ_PNP的IRP(I/O Request Packages)的回调函数,对PNP的IRP处理是WDM和NT驱动的重大区别之一。在WDM程序中,大部分卸载工作放在对IRP_MN_REMOVE_DEVICE的IRP的处理函数中处理。 13、在WDM的驱动程序中,创建设备对象需要驱动程序向系统注册一个称作 AddDevice的例程,由PNP调用如:NTSTA TUS HelloAddDevice(IN PDRIVER_OBJECT DriverObject, IN PDEVICE_OBJECT PhysicalDeviceObject); 对象->AddDevice=HelloAddDevice; 14、WDM驱动的安装需要使用INF文件安装,其中编译的时候其Sources文件有所不 同。要安装WDM驱动,要先为驱动程序编写一个inf文件,该文件描述了驱动的操作硬件设备信息和驱动的一些信息,并存放在源文件的同一目录下。Inf的信息是提供给SDK使用的。 15、安装WDM驱动,由于该驱动是一个虚拟设备,因此需要使用添加硬件的方式使 用inf安装。快速安装的话可以使用DriverStudio的EzDriverInstaller工具直接安装。16、Windows系统的设计思想采用CS架构,内核到硬件之间使用HAL(硬件抽象层) 作为过渡。Native API穿越了用户层和内核层。为能将其他操作系统程序移植到windows

从零开始搭建Linux驱动开发环境

参考: 韦东山视频第10课第一节内核启动流程分析之编译体验 第11课第三节构建根文件系统之busybox 第11课第四节构建根文件系统之构建根文件系统韦东山书籍《嵌入式linux应用开发完全手册》 其他《linux设备驱动程序》第三版 平台: JZ2440、mini2440或TQ2440 交叉网线和miniUSB PC机(windows系统和Vmware下的ubuntu12.04) 一、交叉编译环境的选型 具体的安装交叉编译工具,网上很多资料都有,我的那篇《arm-linux- gcc交叉环境相关知识》也有介绍,这里我只是想提示大家:构建跟文件系统中所用到的lib库一定要是本系统Ubuntu中的交叉编译环境arm-linux- gcc中的。即如果电脑ubuntu中的交叉编译环境为arm-linux-

二、主机、开发板和虚拟机要三者互通 w IP v2.0》一文中有详细的操作步骤,不再赘述。 linux 2.6.22.6_jz2440.patch组合而来,具体操作: 1. 解压缩内核和其补丁包 tar xjvf linux-2.6.22.6.tar.bz2 # 解压内核 tar xjvf linux-2.6.22.6_jz2440.tar.bz2 # 解压补丁

cd linux_2.6.22.6 patch –p1 < ../linux-2.6.22.6_jz2440.patch 3. 配置 在内核目录下执行make 2410_defconfig生成配置菜单,至于怎么配置,《嵌入式linux应用开发完全手册》有详细介绍。 4. 生成uImage make uImage 四、移植busybox 在我们的根文件系统中的/bin和/sbin目录下有各种命令的应用程序,而这些程序在嵌入式系统中都是通过busybox来构建的,每一个命令实际上都是一个指向bu sybox的链接,busybox通过传入的参数来决定进行何种命令操作。 1)配置busybox 解压busybox-1.7.0,然后进入该目录,使用make menuconfig进行配置。这里我们这配置两项 一是在编译选项选择动态库编译,当然你也可以选择静态,不过那样构建的根文件系统会比动态编译的的大。 ->Busybox Settings ->Build Options

WINDOWS 7 配置驱动开发环境(wdk7.60)

WINDOWS 7 配置驱动开发环境(wdk7.60) 1. 安装VS2010,WDK7.60(GRMWDK_EN_7600_1) 2. 新建VC 控制台项目(选择为空项目) 3. 新建项目配置“driver” ,点击下拉按钮-点击(配置管理器) 输入名称(Driver Debug)点击确定就可以了,其他的不要动哦!

完成后的效果! 点击确定按钮之后呈现出来的画面 鼠标右击工程选择属性,会弹出以下窗口!

4. 设置VC++路径 <我把wdk安装在E盘下> a. 配置可执行文件目录:E:\WinDDK\7600.16385.1\bin\x86; b. 配置包含目录:E:\WinDDK\7600.16385.1\inc\ddk E:\WinDDK\7600.16385.1\inc\ E:\WinDDK\7600.16385.1\inc\api c. 配置库目录: E:\WinDDK\7600.16385.1\lib\win7\i3865 新建C/C++文件不然无C/C++设置选项 <刚开始我们创建了一个空的项目所以项目里没有c++文件,现在要做的就是在空的项目-源文件-添加一个新建项c++文件> 常规 目标文件扩展名:.sys //必选 6. 设置C/C++选项 常规选项卡 1 调试信息格式(C7 兼容(/Z7) //可选 2 警告等级(2 级(/W2) //可选 3 将警告视为错误(是(/wx) //可选 优化选项卡 优化(禁用/Od) //可选 预处理器

预处理器定义:WIN32=100;_X86_=1;WINVER=0x501;DBG=1 //必选如果是Release,那么可想而知,不需要DBG=1 代码生成 启用最小重新生成:否//可选 基本运行时检查:默认值//可选 运行时库:多线程调试(/MTd) 或多线程(/MT) //建议选<本人选择的是多线程调试(/MTd)> 缓冲区安全检查:否//可选 (可避免出现LINK : error LNK2001: 无法解析外部符号__security_cookie) 高级 调用约定__stdcall(/Gz) //必选 7. 链接器设置 常规 启用增量链接:否(/INCREMENTAL:NO) //建议选上 忽略导入库:是// 可选 ( 设置为此值时,必须在附加库目录中加:E:\WinDDK\7600.16385.1\lib\win7\i3865 这样项目就不会依赖IDE 环境的设置) 如果否( 设置为此值时,将依赖IDE 的环境的相关设置) 输入 附加依赖项 ntoskrnl.lib;Hal.lib;wdm.lib;wdmsec.lib;wmilib.lib;ndis.lib;MSVCRT.LIB;LIBCMT.LIB //必选 //NT式驱动ntoskrnl.lib WDM式驱动wdm.lib ( HalXXX 函数在Hal.lib,WmiXXX 函数在wmilib.lib ,NdisXXX函数在ndis.lib ) ( 必要时需要增加微软的标准库MSVCRT.LIB MSVCRTD.LIB(调试库) LIBCMT.LIBIBCMTD.LIB(调试库) ) ( 如果源码中有source 文件,那么该文件的TARGETLIBS 字段会列出该项目需要的库) 忽略所有默认库:是(/NODEFAULTLIB) //必选 清单文件: 启用用户账户控制(UAC)否//必选 不然会出现>LINK : fatal error LNK1295: “/MANIFESTUAC”与“/DRIVER”规范不兼容;链接时不使用“/MANIFESTUAC” 调试: 生成调试信息是(/DEBUG) //可选 生成映像文件:是(/MAP) //可选 映像文件名:$(TargetDir)$(TargetName).map //可选 系统(System) 子系统: 控制台(/SUBSYSTEM:CONSOLE) //必选 堆栈保留大小:4194304 //可选

Windows驱动程序开发环境配置

Windows驱动程序开发笔记 一、WDK与DDK环境 最新版的WDK 微软已经不提供下载了这里:https://https://www.wendangku.net/doc/0314000361.html,/ 可以下并且这里有好多好东东! 不要走进一个误区:下最新版的就好,虽然最新版是Windows Driver Kit (WDK) 7_0_0,支持windows7,vista 2003 xp等但是它的意思是指在windows7操作系统下安装能编写针对windows xp vista的驱动程序, 但是不能在xp 2003环境下安装Windows Driver Kit (WDK) 7_0_0这个高版本,否则你在build的时候会有好多好多的问题. 上文build指:首先安装好WDK/DDK,然后进入"开始"->"所有程序"->"Windows Driver Kits"->"WDK XXXX.XXXX.X" ->"Windows XP"->"x86 Checked Build Environment"在弹出来的命令行窗口中输入"Build",让它自动生成所需要的库 如果你是要给xp下的开发环境还是老老实实的找针对xp的老版DDK吧,并且xp无WDK 版只有DDK版build自己的demo 有个常见问题: 'jvc' 不是内部或外部命令,也不是可运行的程序。 解决办法:去掉build路径中的空格。 二、下载 WDK 开发包的步骤 1、访问Microsoft Connect Web site站点 2、使用微软 Passport 账户登录站点 3、登录进入之后,点击站点目录链接 4、在左侧的类别列表中选择开发人员工具,在右侧打开的类别:开发人员工具目录中找到Windows Driver Kit (WDK) and Windows Driver Framework (WDF)并添加到您的控制面板中 5、添加该项完毕后,选择您的控制面板,就可以看到新添加进来的项了。 6、点击Windows Driver Kit (WDK) and Windows Driver Framework (WDF),看到下面有下载链接,OK,下载开始。下载后的文件名为: 6.1.6001.18002.081017-1400_wdksp-WDK18002SP_EN_DVD.iso将近600M大小。

在Ubuntu10.04下驱动开发环境搭建

在Ubuntu10.04驱动开发环境搭建 一、准备开发工具 开发工具主要有gcc、gdb、make 在Ubuntu中可以通过下面这个命令安装: $apt-get install build-essential 我没有执行上面的命令,因为我在之前编译过Android,相关工具已经配置好了: $sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev x11proto-core-dev libx11-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos libncurses5-dev 二、下载Linux源代码 linux源码可以通过以下几种途径获得: 1)直接去https://www.wendangku.net/doc/0314000361.html,下载 2)通过包管理工具下载源码 用下面指令查看可用的源码包: $ sudo apt-cache search linux-source linux-source - Linux kernel source with Ubuntu patches linux-source-2.6.32 - Linux kernel source for version 2.6.32 with Ubuntu patches 在Ubuntu中可以通过下面这个命令下载: $apt-get install linux-source-(版本号) $sudo apt-get install linux-source-2.6.32 下载后的文件linux-source-2.6.32.tar.bz2在/usr/src目录中,解压: $su – root $cd /usr/src $tar jxvf linux-source-2.6.32.tar.bz2 解压后在/usr/src目录下产生了一个linux-source-2.6.32源码目录 三、编译内核 依次执行下列命令(必须都执行,否则编译错误,如果不是root用户,命令前加sudo):1)配置内核 $su – root $cd /usr/src/linux-source-2.6.32 $make config 或 $make menuconfig 或者 $ sudo cp ../linux-headers-2.6.32-21-generic/.config ./.config 如果当前运行内核打开了CONFIG_IKCONFIG_PROC参数,则可以 $zcat /proc/config.gz > .config $make oldconfig

WDK开发环境的配置

VS2008 PRO 、WDK 和DDKWizard搭建Vista驱动开发环境 标题:VS2008 PRO 、WDK 和DDKWizard搭建Vista驱动开发环 境 作者:eping Email:eping@https://www.wendangku.net/doc/0314000361.html, 时间:2009.2.12 说明:pediy 有篇VS2008、DDK XP和DDKWizard搭建驱动开发环境的文章。作者为bleyes ,本人在搭建vista驱动开发环境时遇到了些问题..故对其再做一些总结....希望后来的读者遇到有跟我同样的问题时能少走弯路.......在此向前作者表示感谢! 一、安装VS2008(我用的是英文专业版其实中英文版都没什么很大区别) 二、安装Visual Assist (这不是必需的)但它确是我们开发时不可多得的好工具 三、安装WDK 下载WDK及安装细节详见https://www.wendangku.net/doc/0314000361.html,/forum/ht m_data/12/0811/20794.html 四、安装DDKWizard 下载地址:https://www.wendangku.net/doc/0314000361.html,/ 需要下载的文件有 1、ddkwizard_setup.exe 2、ddkbuild_bat.zip 3、ddkbuild_cmd.zip 安装第一个文件跟安装普通程序一样只需要按默认设置即可 2、3两个文件只需要解压copy到我们的wdk所有的根目录即可 如图:

接下来的我们便要设置环境变量了 需要设置的地方有两个 1、path 需将D:\WinDDK添加到Path变量中 否则编译时会出现找不到命令的错误 2、新建系统变量 变量名:WLHBASE 变量值为:D:\WinDDK\6001.18002 修改为你安装的wdk路径如下图

Windows7+WDK+VS2010+VisualDDK驱动开发环境搭建

[置顶]Windows7+WDK+VS2010+VisualDDK驱动开发环境搭建(菜鸟的经验) 分类:驱动开发2011-08-12 23:30 863人阅读评论(3) 收藏举报 自己在研究驱动开发,第一步就是开发环境的搭建,网上已有很多的教程一,我也是按着教程一步一步搭建的,但在搭建过程的过程当中遇到一些问题,也花了我不少时间。 第一个难题就是,我是Windows7+VS2010+WDK的开发环境。 首先我参考了网上的一篇文章:https://www.wendangku.net/doc/0314000361.html,/guojingjia2006/archive/2011/03/19/142211.html WINDOWS 7 配置驱动开发环境(wdk7.60) 1. 安装VS2010,WDK7.60 (GRMWDK_EN_7600_1) 2. 新建VC 控制台项目(选择为空项目)

3. 新建项目配置“driver” ,点击下拉按钮-点击(配置管理器) 输入名称(driver)点击确定就可以了,其他的不要动哦!

完成后的效果! 点击确定按钮之后呈现出来的画面

鼠标右击新建的driver属性,会弹出以下窗口! 4. 设置VC++路径 <我把wdk安装在E盘下> a. 配置可执行文件目 录:E:\WinDDK\7600.16385.1\bin\x86;

b. 配置包含目录: E:\WinDDK\7600.16385.1\inc\ddk E:\WinDDK\7600.16385.1\inc\ E:\WinDDK\7600.16385.1\inc\api c. 配置库目 录: E:\WinDDK\7600.16385.1\lib\win7\i3865 新建C/C++文件不然无C/C++设置选项 <刚开始我们创建了一个空的项目所以项目里没有 c++文件,现在要做的就是在空的项目-源文件-添加一个新建项c++文件> 常规 目标文件扩展名:.sys //必选 6. 设置C/C++选项 常规选项卡 1 调试信息格式(C7 兼容(/Z7) //可选 2 警告等级(2 级(/W2) //可选 3 将警告视为错误(是(/wx) //可选

VS2008 、DDK XP 和DDKWizard 搭建驱动开发环境

VS2008 、DDK XP 和DDKWizard 搭建驱动开发环境 配置环境永远是第一个拦路虎,驱动开发的环境配置更是如此,今天看了一本有关DDK 开发的,故想在自己的机子上测试一下。所以就得开始配置环境,因为本人机上已经装了VS2008, 所以没找查找关天VC 其他版本的配置方法。开始在网上找了些资料,一边装一边记录,方便以后再次重装吧。 一、安装Visual Studio 2008 这个大家都会啦,傻瓜式安装,一直next 就行,截图如下: 二、安装DDK XP 。 听说现在MS 不提供DDK 下载了,比较难下载到,经过一番internet 的搜索,最终让我在北大的天网搜索里搜索到的了XP 的DDK ,地址为:ftp://210.42.106.194/%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7/DDK/ XP 的DDK 与2003 的DDK 是不同的:网上有人先是安装了DDK 2003 ,并选择使用DDK2003 ,但是在WindowsXP 系统下编译的时候总提示: error C1083: Cannot open include file: 'D:\WINDDK\3790~1.183\inc\wnet\warning.h': No such file or directory 但实际的驱动程序源文件中并没有用到warning.h 文件,由此看来在XP 系统下使用DDK 2003 还是有配置不当的问题,但也很有可能是我对DDKWizard 的使用还有不清楚的

地方,总之,使用了DDK XP 后,一切顺利。建议全选,如下图: 三、安装DDKWizard 在https://www.wendangku.net/doc/0314000361.html,/ 网站上发现了一个很好用的辅助工具DDKWizard ,能够方便地对开发环境进行配置,试用之后感觉很方便,真是适合懒人啊,工具的作者也自称是因为懒惰才开发此工具,看来“懒惰是推动科技发展的动力”一点不假。 DDKWizard 安装一路Next 即可,easy 。

驱动开发和调试的环境设置

【文章标题】: 驱动开发和调试的环境设置 【文章作者】: qqeleven 【使用工具】: VC2003,VMware,Visual SoftICE 【操作平台】: xp sp2 【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教! -------------------------------------------------------------------------------- 【详细过程】 介绍一下如何用VC2003开发驱动,并且介绍在虚拟机VMware中用Visual SoftICE调试驱动。 先安装好VC2003,再安装Visual Assist X(VC的一个插件,高亮、查错、、、)。VC安装好后就要安装驱动开发包DDK2003了,建议完全安装。之后就安装DriverStudio,我用的是3.2,如图: 打开VC2003,工具->DriverStudio->DDK Build Settings…,设置编译环境:

然后设置Visual Assist X: 开发环境设置完成了。现在编译一个驱动,拿DDK目录下的一个有现成代码的例子ioctl讲解。用DriverStudio 提供的一个工具DDK sources to vcproj Converter建立工程文件。打开ioctl目录下的dirs文件(其实是打开sources文件),Convert-> Convert DDK dirs/sources…,按下Convert生成工程文件。用VC2003打开ioctl.sln,现在你可以修改或者编译驱动了,因为这个是现成的例子不用修改,那就直接编译吧。用Win32 Checked方式编译,编译工程:工具->DriverStudio->Build Solution with DDK Build.exe。如果有错误产生可以参考log文件来修复错误,编译成功后会产生ioctlapp.exe和sioctl.sys文件。下面建立调试环

第二讲-人力资源战略与规划

第二讲人力资源战略 一、人力资源战略的定义 人力资源战略是指企业为实现其战略目标而制定的一系列有关人力与人才资源开发与管理的总体规划,是企业发展战略的重要组成部分,是抓住组织的战略目标和目的,并将他们转化为前后一致的、整体化的、完善的员工管理计划和政策,是“从人力资源的“质”和“量”入手,评估目前人力资源的质量与企业目前及未来发展变化所需之间的差距,并能够满足这些要求的过程”。 人类已经进入知识经济时代。这个时代的市场竞争归根结底是人才的竞争,因此企业的人力资源战略核心应该是以人为本。所谓以人为本就是要符合人的本性需求。马斯洛把人的需求分为五个层次,即:生理、安全、归属和爱、自尊、自我实现。因此,现代企业的以人为本人力资源战略就应该充分考虑到人的需求层次,并通过各种渠道去满足不同层次的需求,只有这样才能真正的吸引人才、留住人才。事实上,任何一个层次的需求我们都是不能忽略的。 1、生理需求 首先在生理需求方面,体现在公司的人力资源战略上就是要建立合理的薪酬、福利待遇体系,使员工寝食无忧,只有这样他才能够全身心的投入工作。沃尔玛的人力资源战略就非常重视员工生理需求的充分满足,并将此种需求与企业利益挂钩,实现双赢。利润分享计划:每个在沃尔玛工作两年以上的并且每年工作1000小时的员工都有资格分享公司当年利润。此项计划使员工的工作热情空前高涨。之后,山姆又推出了雇员购股计划,让员工通过工资扣除的方式,以低于市值15%的价格购买股票。这样员工利益与公司利益休戚相关,实现了真正意义上的“合伙”。沃尔玛公司还推行了许多奖金计划,最为成功的就是损耗奖励计划。如果某家商店能够将损耗维持在公司的既定目标之内,该店每个员工均可获得奖金,最多可达200美元。这一计划也大大降低了公司的损耗率,节约了经营开支。 2、安全需求 人们在满足了基本的生理需求后,就会产生新的需求———安全需求,主要包括安全、稳定、依赖、免收恐吓、焦躁与混乱的折磨,对体制法律、秩序、界限的依赖等等。 那么具体体现在人力资源战略中,就是要为员工建立一个相对安全、稳定的工作大环境,这个大环境既包括物质环境也包括精神环境,例如公司的各种安全防护措施要完善,工作环境要尽量保证员工的身体健康;制度的建立与实施要考虑到员工的感受;保证一个相对稳定的员工队伍,频繁裁人的公司会让员工失去稳定感,从而会诱发主动跳槽等等。 3、归属的需求 现代社会中各方面压力的增大加剧了人们对于归属感的渴望,人们希望能够真正团结起来,共同地应对外来危险,共同地面对同一件事情,人们会在别人对自己的协助中获得满足。广大的足球球迷在观看比赛中所表现出的巨大热情、同仇敌忾的凝聚力,正是现代人追求归属感的有力证据。 那么,作为企业的人力资源战略,要想最大限度激发员工的工作热情,就必须通过各种方式让员工在企业中找到归属感。例如丰田公司建立的“公司内的团体活动”就使员工找到了归属感。它设立的“亲睦团体”是同学、同乡或具有相同兴趣爱好的人加入到其中,为了避免机构庞大,它还按照各种条件分成更小的团体,这样可以使参加者更加随意,亲近地接触,这增加员工的归属感,培养团队意识很。每个人都可以同时属于多个团体,为了这种聚会,公司建造了体育馆、集会大厅、会议室等设施,供自由使用,在这种团体中领导人是互选的,且采取轮换制。这些团体都有一个共同的条件,那就是把这些团体作为会员相互之间沟通亲睦、自我启发、有效地利用业余时间和不同职务的会员相互交流的场所。这些团体都

vs2010配置驱动开发环境

1. 安装VS2010,WDK7.60(GRMWDK_EN_7600_1) 2. 新建VC 控制台项目(选择为空项目) 3. 新建项目配置“driver” ,点击下拉按钮-点击(配置管理器) 输入名称(driver)点击确定就可以了,其他的不要动哦!

完成后的效果! 点击确定按钮之后呈现出来的画面

鼠标右击新建的driver属性,会弹出以下窗口! 4. 设置VC++路径 <我把wdk安装在E盘下> a. 配置可执行文件目录:E:\WinDDK\7600.16385.1\bin\x86; b. 配置包含目录:E:\WinDDK\7600.16385.1\inc\ddk E:\WinDDK\7600.16385.1\inc\crt E:\WinDDK\7600.16385.1\inc\api c. 配置库目录: E:\WinDDK\7600.16385.1\lib\win7\i3865

新建C/C++文件不然无C/C++设置选项 <刚开始我们创建了一个空的项目所以项目里没有c++文件,现在要做的就是在空的项目-源文件-添加一个新建项c++文件> 常规 目标文件扩展名:.sys //必选 6. 设置C/C++选项 常规选项卡 1 调试信息格式(C7 兼容(/Z7) //可选 2 警告等级(2 级(/W2) //可选 3 将警告视为错误(是(/wx) //可选 优化选项卡 优化(禁用/Od) //可选 预处理器 预处理器定义:WIN32=100;_X86_=1;WINVER=0x501;DBG=1 //必选 代码生成 启用最小重新生成:否//可选 基本运行时检查:默认值//可选 运行时库:多线程调试(/MTd) 或多线程(/MT) //建议选 <本人选择的是多线程调试(/MTd)> 缓冲区安全检查:否//可选 (可避免出现LINK : error LNK2001: 无法解析外部符号__security_cookie) 高级 调用约定__stdcall(/Gz) //必选 7. 链接器设置 常规 启用增量链接:否(/INCREMENTAL:NO) //建议选上 忽略导入库:是// 可选 ( 设置为此值时,必须在附加库目录中加:E:\WinDDK\7600.16385.1\lib\win7\i3865 这样项目就不会依赖IDE 环境的设置) 如果否( 设置为此值时,将依赖IDE 的环境的相关设置) 输入 附加依赖项 ntoskrnl.lib;Hal.lib;wdm.lib;wdmsec.lib;wmilib.lib;ndis.lib;MSVCRT.LIB;LIBCMT.LIB //必 选

第二讲人力资源战略管理

第二讲人力资源战略管理 电子教案 引入故事:让鸬鹚长期抓大鱼 村庄旁边有一个湖,湖边住着两个渔夫A和B。渔夫自己打渔,将鱼拿到市场上去卖,工作非常辛苦。 一天,一个外乡人来到村庄,看见渔夫打渔很辛苦,就对他们说:“你们可以不用这样辛苦的打渔,有一种鸟叫鸬鹚,它们会抓鱼,你们可以买一些鸬鹚来帮你们打渔。”渔夫听了觉得这个主意非常好,于是都买了一群鸬鹚。从此,渔夫们只要指挥鸬鹚去抓鱼就可以了,不用自己去打渔。 过了一段时间,大家发现渔夫A打到的鱼总是比渔夫B打到的多,大家都说渔夫A厉害。又过了一段时间,大家又发现情况发生了变化,渔夫B打的鱼越来越多,而且都是能卖好价钱的大鱼,而渔夫A打的鱼却越来越少。大家觉得很奇怪,为什么会这样呢?渔夫A也觉得很奇怪,就去登门拜访渔夫B。 “我们的鸬鹚数量一样多,又同在一个湖中打渔,为什么刚开始我打的鱼多,后来却越来越少,而你恰恰相反呢?”渔夫A问道。 “我们的鸬鹚虽然一样多,但是我们的方法却不一样,所以会有不同的结果呀。你买了鸬鹚后,每天按照每只鸬鹚打到鱼的数量给它们发食物,平时也不让它们休息。这样做,刚开始的时候可能效果不错,时间长了,鸬鹚非常辛苦,会厌倦抓鱼。另外,不知你注意到没有,湖里的鱼也非常聪明,你的鸬鹚每天抓鱼,时间长了,鱼也学会了怎样躲避鸬鹚,而你的鸬鹚却用老办法抓鱼,当然能抓到的鱼会大大减少了。”渔夫B解释道。 “那你是怎样利用鸬鹚抓鱼的呢?”渔夫A问道。 “我刚买回鸬鹚的时候,并不关键让鸬鹚赶快去抓鱼,而是让它们用一段时间去适应这里的情况。等它们完全适应了,才让它们去抓鱼;当我发现鸬鹚很累的时候,就会让它们休息。同时,我会根据湖里鱼的变化、观察大鱼的生活习性,然后再训练我的鸬鹚学习新的抓鱼方式。所以,我的鸬鹚越来越适应这里的情况,抓到的鱼就也越来越多、越来越大了。以后我还准备让一部分鸬鹚专门培育小鸬鹚,明年,我的鸬鹚数量会增加一倍。”渔夫B说道。 两个渔夫使用一样的鸬鹚,所关注的重点不同,得到的结果也不同。那么,他们关注的重点有什么本质上的区别呢? 一、战略及其相关概念 1.使命 使命,就是组织存在的理由和价值,即回答为谁创造价值,以及创造什么样的价值。 使命就是组织存在的目的。 2.愿景 愿景,就是组织渴求的未来状态,即回答组织的未来将成为什么样的组织。 ----------彼得〃圣吉《第五项修炼》组织的愿景规划一般包括两个组成部分:一是组织在未来的10—30年要实现的远大目标;二是对组织在实现这些目标后将会是什么样子的生动描述。 福特公司的愿景----“使汽车大众化” 语言描述:“我要为大众生产一种汽车……它的价格如此之低,不会有人因为薪水不高而无法拥有它,人们可以和家人一起在上帝赐予的广阔无限的大自然里陶醉于快乐的时光中……当我实现它时,每个人都能买得起它,每个人都将拥有它。马会从马路上消失,汽车理所当然地取代了它……我将会给众多的人提供就业的机会,而且报酬不薄。”通过塑造并不断宣扬这样美妙的愿景,福特激励了整整一代企业家和员工,使之为了实现这样的梦想而不懈奋斗。-------亨利〃福特 3.战略 战略有一个专业的军事定义:计划和指挥战争的艺术。迈克尔〃波特(Michael Porter)指出,在商业上所讲的战略,是指为实现一系列特殊目标而制定的通用政策,也可以翻译为“策略”。 战略(strategy)是一个组织长期的发展方向和范围,它通过在不断变化的环境中调整资源配置来取得竞争优势,从而实现利益相关方的期望。 战略的核心是什么?-----获得并保持竞争优势

相关文档
相关文档 最新文档