win2003下vs2008+ddk2003配置驱动开发环境(原创)
http://flashaway.blog.163.com/blog/static/95624576200961062043933/
步骤如下:
1.安装vs2008。
2.下载ddkwizard_setup.exe,
下载地址为http://ddkwizard.assarbad.net/downloads/ddkwizard_setup.exe
下载完后安装,安装目录随意。
3.下载最新的DDK开发包,版本要和你的操作系统相对应。
下载地址为http://www.microsoft.com/whdc/devtools/ddk/default.mspx。
下载完后安装。我的安装路径为E:\soft\WinDDK;
4.下载ddkbuild_bat.zip
下载地址为http://ddkwizard.assarbad.net/downloads/ddkbuild_bat.zip。
解压到E:\soft\WinDDK下。
5.下载ddkbuild_cmd.zip
下载地址为http://ddkwizard.assarbad.net/downloads/ddkbuild_cmd.zip。
解压到E:\soft\WinDDK下。
6.配置系统环境变量:
将DDKBUILD.bat 或DDKBUILD.cmd的路径添加到系统的path变量
(我的电脑—>系统属性/高级/环境变量/系统变量/path变量双击修改值)。
例如:E:\soft\WinDDK
据安装的DDK的不同版本添加不同的变量到系统变量中。
(我的电脑—->系统属性/高级/环境变量/系统变量/新建:)
2000 DDK则变量名为: W2KBASE
XP DDK则变量名为: WXPBASE
2003 sp1 DDK则变量名为: WNETBASE
值例如E:\soft\WinDDK\3790.1830
另外:需要注意是系统变量,不是上面的用户变量。
7.打开VS2008 工具->选项->项目和解决方案选项中的VC++ 目录增加WinDDK的根目录。
8.以上步骤如果完成,你可以在网上找个简单的驱动例子在此平台上编译。
如果显示编译成功,只是没有产生*.sys文件的,prefastchk_wnet_x86.log文件中会显示:“错误:没有文件扩展“.js”的脚本引擎。”
如是则DDKWizard根本没运行Build的javas
自然就可以编译源码并产生*.sys文件了。
9. 下载InstDrv工具,用来安装和卸载驱动程序。网上很多,自己搜索下载。
10.下载驱动查看工具debugview。
下面我们用InstDrv来调试我们的驱动程序。
一,在vs2008中新建一个ddk 项目:二.给项目添加一个test.c源文件,里面添加如下代码:
#include <ntddk.h>
VOID Unload(IN PDRIVER_OBJECT DriverObject)
{
}
NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject,IN PUNICODE_STRING RegistryPath)
{
DriverObject->DriverUnload=Unload;
DbgPrint(“Hello World!”);
return STATUS_SUCCESS;
}
另外还需要对source文件进行修改:
其中的含义我就不在这里熬述了。
直接编译,如果你的配置环境是严格按照我上面的步骤进行的,那在你的工程目录下就能够找到一个Test.sys驱动文件。这就是我们的成果文件。
三,现在我们用InstDrv工具对这个Test.sys驱动文件进行安装并启动。
下面我们打开debugview查看我们驱动程序输出的调试信息 。在运行之前,还必须做一项工作,打开注册表[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]添加一个文件夹Debug Print Fil
然后给他添加一个word型键值,键名:DEFAULT(必须大写),值:00000008。重启电脑。
现在打开InstDrv与debugview工具,同时运行,当InstDrv启动test.sys时,debugview中就会打印出” Hello World!”的调试信息。
另外需要说明, InstDrv与debugview必须已管理员身份进行启动才能正常运行,
你也可以选择右键->打开方式,选择administrator进行运行:
以上这些步骤缺一不可,切记,切记~~~~~
| 高手不要BS我,菜鸟必看 WINDOWS各种版本的SSDT序列号不同HOOK可能搞错了 会让系统崩溃 所以考虑这个就写了个 ,不知道网上有没有解决这个的不管了先把自己写的发上来, 原理:我知道在SYS载入的时候 导入表载入的函数就是真实的地址 我先枚举SSDT并找回原地址 一个一个的IF 然后返回 索引号就这样。。。。。 代码就不全发了只发部分。。。。 ULONG GetKernelBaseAddress(char* lpszModule) { NTSTATUS nResult; ULONG ulNeededSize, uLoop, uKernelAddr; PMODULE_LIST pModuleList; uKernelAddr = 0; ZwQuerySystemInformation(11, &ulNeededSize, 0, &ulNeededSize); pModuleList = (PMODULE_LIST)ExAllocatePool(NonPagedPool, ulNeededSize); nResult = ZwQuerySystemInformation(11, pModuleList, ulNeededSize, NULL); if (NT_SUCCESS(nResult)) { uKernelAddr = pModuleList->aSM[0].Base; strcpy(lpszModule,”\\SystemRoot\\System32\”); strcat(lpszModule,pModuleList->aSM[0].ModuleNameOffset+pModuleList->aSM[0].ImageName); } ExFreePool(pModuleList); return uKernelAddr; } ULONG RVAToRaw(PVOID lpBase,ULONG VirtualAddress) { IMAGE_DOS_HEADER *pDosHeader; IMAGE_NT_HEADERS *pNtHeader; IMAGE_SECTION_HEADER *pSectionHeader; ULONG NumOfSections,uLoop; pDosHeader=(IMAGE_DOS_HEADER*)lpBase; if (pDosHeader->e_magic != IMAGE_DOS_SIGNATURE) return 0; pNtHeader=(IMAGE_NT_HEADERS*)((unsigned char*)lpBase+pDosHeader->e_lfanew); NumOfSections=pNtHeader->FileHeader.NumberOfSections; pSectionHeader = (IMAGE_SECTION_HEADER*)((ULONG)pNtHeader + sizeof(ULONG) + sizeof(IMAGE_FILE_HEADER) + pNtHeader->FileHeader.SizeOfOptionalHeader); VirtualAddress -= (ULONG)lpBase; for (uLoop=0;uLoop<NumOfSections;uLoop++) { pSectionHeader = (IMAGE_SECTION_HEADER*)((ULONG)pSectionHeader + sizeof(IMAGE_SECTION_HEADER) * uLoop); if(VirtualAddress>pSectionHeader->VirtualAddress&&VirtualAddress<pSectionHeader->VirtualAddress+pSectionHeader->SizeOfRawData) { ULONG Offset = VirtualAddress-pSectionHeader->VirtualAddress + pSectionHeader->PointerToRawData; return Offset; } } return 0; } ULONG FindFunctionIndexForSSDT(PVOID FunctionAddress) { char szKernelPath[260]; ULONG uKernelMoule,uImageBase,uSSDTCount,uSSDTBase,uSSDTRaw,uLoop,uOldAddress,uNewAddress; PULONG lpArraySSDT; ANSI_STRING KernelFileName; UNICODE_STRING uFileName; OBJECT_ATTRIBUTES ObjAttr; HANDLE hFile=NULL; NTSTATUS status; IO_STATUS_BLOCK ioStatus; FILE_POSITION_INFORMATION FilePos; memset(szKernelPath,0,260); uKernelMoule=GetKernelBaseAddress(szKernelPath); uImageBase = ((IMAGE_NT_HEADERS*)(uKernelMoule + ((IMAGE_DOS_HEADER*)uKernelMoule)->e_lfanew))->OptionalHeader.ImageBase; dprintf(“Kernel ImageBase: 0x%.8X”, uImageBase); dprintf(“Kernel Base: 0x%.8X”, uKernelMoule); dprintf(“Kernel Module Path: %s”, szKernelPath); uSSDTCount = KeServiceDescriptorTable->NumberOfService; uSSDTBase = (ULONG)KeServiceDescriptorTable->ServiceTableBase; dprintf(“SSDT BaseAddress: 0x%8X, SSDT Count: 0x%X”, uSSDTBase, uSSDTCount); lpArraySSDT =(PULONG) ExAllocatePool(PagedPool, uSSDTCount * sizeof(ULONG)); if (lpArraySSDT == NULL) return 0; uSSDTRaw = RVAToRaw((PVOID)uKernelMoule, uSSDTBase); dprintf(“SSDT RAW: 0x%.8X”, uSSDTRaw); if (uSSDTRaw == 0) { DbgPrint(“SSDT RAW Error”); ExFreePool(lpArraySSDT); return 0; } RtlInitAnsiString(&KernelFileName,szKernelPath); if (!NT_SUCCESS(RtlAnsiStringToUnicodeString(&uFileName, &KernelFileName, TRUE))) { DbgPrint(“RtlAnsiStringToUnicodeString Error”); ExFreePool(lpArraySSDT); return 0; } InitializeObjectAttributes(&ObjAttr, &uFileName, OBJ_KERNEL_HANDLE | OBJ_CASE_INSENSITIVE, NULL, NULL); if (NT_SUCCESS(ZwOpenFile(&hFile, FILE_READ_DATA, &ObjAttr, &ioStatus, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, FILE_SYNCHRONOUS_IO_NONALERT)) && hFile) { FilePos.CurrentByteOffset.LowPart = uSSDTRaw; FilePos.CurrentByteOffset.HighPart = 0; status = ZwSetInformationFile(hFile, &ioStatus, &FilePos, sizeof(FILE_POSITION_INFORMATION), FilePositionInformation); if (NT_SUCCESS(status)) { status = ZwReadFile(hFile, NULL, NULL, NULL, &ioStatus, lpArraySSDT, uSSDTCount * sizeof(ULONG), NULL, NULL); if (NT_SUCCESS(status)) { for (uLoop=0; uLoop<uSSDTCount; uLoop++) { uOldAddress = *(lpArraySSDT + uLoop) – uImageBase + uKernelMoule; uNewAddress = *((PULONG)uSSDTBase + uLoop); if(uOldAddress==(ULONG)FunctionAddress) { ZwClose(hFile); RtlFreeUnicodeString(&uFileName); ExFreePool(lpArraySSDT); return uLoop; } } } else { if(hFile) ZwClose(hFile); } } } RtlFreeUnicodeString(&uFileName); ExFreePool(lpArraySSDT); return 0; } VOID WriteSSDTHook(ULONG Service_Index,PVOID NewAddress,ULONG *OldAddress) { ULONG Address; DbgPrint(“RunHook – NewAddress:0x%00X – Service_Index:0x%0X”,NewAddress,Service_Index); Address = (ULONG)KeServiceDescriptorTable->ServiceTableBase + Service_Index * 4; *OldAddress = *(ULONG*)Address; // 去掉内存保护 __asm { cli mov eax, cr0 and eax, not 10000h mov cr0, eax } *((ULONG*)Address) = (ULONG)NewAddress; // 恢复内存保护 __asm { mov eax, cr0 or eax, 10000h mov cr0, eax sti } } VOID RemoveHook(ULONG Service_Index,PVOID Service_Address) { ULONG Address; Address = (ULONG)KeServiceDescriptorTable->ServiceTableBase + Service_Index * 4; __asm { cli mov eax, cr0 and eax, not 10000h mov cr0, eax } *((ULONG*)Address) = (ULONG)Service_Address; __asm { mov eax, cr0 or eax, 10000h mov cr0, eax sti } } |
20090721 winio ring0
以前有个WINIO。http://www.internals.com/
WinIo – This library allows direct I/O port and physical memory access under Windows 9x/NT/2000 and XP. Version 2.0 provides faster I/O port access, better memory mapping support and can be used from non-administrative accounts under Windows NT/2000 and XP.
http://uchukamen.spaces.live.com/blog/cns!7CB203A44BF94940!887.entry
CPU 温度の取得に関するメモ
が、そもそもそんな I/F の情報は MSDNに載っていない。もう使われていないということか?
さらに調べてみると、
http://kariunten.homeip.net/programming/winring0.html
にマザーボードのコントローラを直接操作する方法が載っていた。そうきますか~~~w。
と思って、そのコードを見てみると、
//—————————————————————————–
// MSR取得
//—————————————————————————–
uint index = 0, eax = 0, edx = 0;
index = 0×0000019C; // アドレス(0×19c)
RdmsrEx(index, ref eax, ref edx, (UIntPtr)1);//MSRの指定アドレスの値を取得(WinRing0使用)
//—————————————————————————–
// 取得した値からCPU温度を算出
//—————————————————————————–
uint tempr = (eax & 0×003F0000);
tempr = tempr >> 16;
tempr = 100 – tempr;//今回TCCは100とする。CPUの種類によってはTCCの値が異なってくるかも。
System.Windows.Forms.MessageBox.Show(tempr.ToString());//CPU温度の値を表示
What’s WinRing0 WinRing0 is a hardware access library for Windows.WinRing0 provides your application to access I/O port, MSR, PCI bus, and etc… WinRing0 is distributed under The modified BSD license.- We would like you to select open source license, too.
组播流媒体服务器--可下载 – 服务应用交流版 – 中国网管论坛 – 全国网管乃一家 – bbs.bitsCN.com
http://bbs.bitscn.com/106721
Microsoft Windows Media – Web Server vs. Streaming Server
http://www.microsoft.com/windows/windowsmedia/compare/webservvstreamserv.aspx
搭建windows media service组播服务器_Simple life of Dugu
http://hi.baidu.com/dugu072/blog/item/d89afd253ee9da6235a80f5b.html
Windows Media streams and RTSP protocol rollover problem
http://all-streaming-media.com/streaming-media-faq/faq-rtsp-protocol-rollover-problem.htm
天空上的彩色
http://wwdjr.blogbus.com/archives/9469_2.html
[转帖]亲密接触WINDOWS MEDIA SERVICE 9 – 襄樊DV联盟[热] – 中国DV玩家大本营-1394论坛 DV论坛&line;中国领先的DV器材网上交易市场和DV人社区&line;二手DV&line;数码摄像机&line;高清摄像机&line;HDV&line;影视制作&line;非线性编辑&line;1394卡&line;电视台&line;电影制作&line;premiere&line;DVD&line;影视广告&line;电视专题&line;婚庆摄像&line;纪录片&line;非编&line;影视素材 – Powered by Discuz!
http://www.1394bbs.com/thread-10005-1-1.html
WIN2K Media多播服务器到底哪个是多播? Windows专区 / Windows NT/2000/XP/2003 – CSDN社区 community.csdn.net
http://topic.csdn.net/t/20020906/22/1003364.html
[原创]基于组播的流媒体服务器——一台服务器支持上千用户[千家论坛 -- 系统集成论坛]
http://www.1000bbs.com/dispbbs.asp?boardid=3&ID=278229
请问有用DY成功实现组播试验的么&关于桥接的几个问题 – Dynamips 7200 路由模拟器讨论专区 – 工大瑞普Cisco网络技术论坛 南京&line;Cisco培训&line;工大瑞普&line;CCNA&line;CCNP&line;CCSP&line;CCIE&line;dynamips – Powered by Discuz!
http://ciscobbs.njut.edu.cn/bbs/viewthread.php?tid=9047&extra=page%3D1
一“举”多“得”—利用Windows Media实现IP组播(图) – futurecolor_非常色彩 – futurecolor – 和讯博客
http://futurecolor.blog.hexun.com/1828043_d.html
如何自己制作一个组播服务器?
http://topic.csdn.net/u/20081006/10/4097e9cf-5020-4cac-9157-874163f888a9.html
Index of /pub/videolan/vlc/0.9.2/win32/
http://download.videolan.org/pub/videolan/vlc/0.9.2/win32/
关于windows Media server流媒体服务器 – cyhzhl的日志 – 网易博客
http://43693893.blog.163.com/blog/static/9679008200851833044179/
实况流的推传递功能 – cyhzhl的日志 – 网易博客
http://43693893.blog.163.com/blog/static/9679008200851832950942/
更改2003上传限制 – cyhzhl的日志 – 网易博客
http://43693893.blog.163.com/blog/static/9679008200851832848537/
计算机世界网-周报全文-如何搭建流媒体服务器
http://www2.ccw.com.cn/05/0542/d/0542d04_1.asp
一“举”多“得”—利用Windows Media实现IP组播(图) – futurecolor_非常色彩 – futurecolor – 和讯博客
http://futurecolor.blog.hexun.com/1828043_d.html
组播流媒体服务器--可下载 – 服务应用交流版 – 中国网管论坛 – 全国网管乃一家 – bbs.bitsCN.com
http://bbs.bitscn.com/106721
一种发现组播私设服务器的方法 – 专利之家
http://www.patent-cn.com/2007nov/CN101075897.shtml
服务器端帮助
http://www.mvn.cn/help.htm
SourceForge.net: TortoiseSVN: Downloading …
http://sourceforge.net/project/downloading.php?groupname=tortoisesvn&filename=LanguagePack_1.5.6.14908-win32-zh_CN.msi&use_mirror=nchc
事件类型: 错误
事件来源: W32Time
事件种类: 无
事件 ID: 34
日期: 2008-2-25
事件: 16:31:47
用户: N/A
计算机: SF
描述:
时间服务检测到系统时间需要更改 +31622397 秒。时间服务将 不会更改系统时间超过 +54000 秒。请验证您的时间和时区 是正确的,并且时间源 cn.pool.ntp.org (ntp.m&line;0×1&line; 61.153.197.226:123) 工作正常。
有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。
Windows Server 2003 和 Windows XP 时间服务注册表项
收起该表格展开该表格
注册表项 MaxPosPhaseCorrection
路径 HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\Config
注释 该项指定服务可进行的最大正时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将记录一个事件。特殊情况:0xFFFFFFFF 表示总是校准时间。域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000(15 小时)。
收起该表格展开该表格
注册表项 MaxNegPhaseCorrection
路径 HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\Config
注释 该项指定服务可进行的最大负时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将转而记录一个事件。特殊情况:-1 表示总是校准时间。域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000(15 小时)。
收起该表格展开该表格
注册表项 MaxPollInterval
路径 HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\Config
注释 该项指定系统轮询间隔所允许的最大间隔(单位是用对数形式表示的秒)。请注意,尽管系统必须根据预定的间隔进行轮询,但是提供程序可以根据请求拒绝生成示例。域成员的默认值是 10。独立客户端和服务器的默认值是 15。
收起该表格展开该表格
注册表项 SpecialPollInterval
路径 HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\TimeProviders\\NtpClient
注释 该项指定手动对等端的特殊轮询间隔(以秒为单位)。当启用 SpecialInterval 0×1 标志时,W32Time 将使用此轮询间隔而非操作系统确定的轮询间隔。域成员的默认值是 3,600。独立客户端和服务器的默认值是 604,800。
Windows 包含 W32Time,它是 Kerberos 身份验证协议所需的时间服务工具。时间服务工具的目的是确保组织中运行 Microsoft Windows 2000 或更高版本的所有计算机都使用公共时间。为确保适当地使用公共时间,时间服务使用层级关系来控制权威,而且不允许出现循环。默认情况下,基于 Windows 的计算机使用下面的层级:
* 所有客户端桌面计算机都提名身份验证域控制器作为其入站时间伙伴。
* 所有成员服务器都遵循与客户端桌面计算机相同的过程。
* 域中的所有域控制器都提名主要域控制器 (PDC) 操作主机作为其入站时间伙伴。
* 所有 PDC 操作主机在选择其入站时间伙伴时都遵循域的层次结构,但可能使用基于层次编号的父域控制器。
在此层级中,位于目录林根的 PDC 操作主机成为组织的权威时间服务器。我们强烈建议您将权威时间服务器配置为从硬件源获取时间。当您将权威时间服务器配置为与 Internet 时间源同步时,不会有任何身份验证。我们还建议您降低服务器和独立客户端的时间校准设置。这些建议可以为您的域提供更准确的时间。
要将 PDC 主机配置为不使用外部时间源,请更改 PDC 主机上的公告标志。PDC 主机是存放域的林根 PDC 主机角色的服务器。这种配置会强制 PDC 主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体 (CMOS) 时钟。要将 PDC 主机配置为使用内部硬件时钟,请按照下列步骤操作:
1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
2. 找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\W32Time\\Config\\AnnounceFlags
3. 在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。
4. 在“编辑 DWORD 值”的“数值数据”框中键入 A,然后单击“确定”。
5. 退出注册表编辑器。
6. 在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:
net stop w32time && net start w32time
Windows Embedded Standard 2009
安装比较顺利
前面CTP版本的:
~~~
下面这一步非常重要:我在这里被困扰了两个小时……。安装过程需要输入SQL Server Express的名称。我在这里犯了错误(之前一直在用SQL Server),我们要填写计算机名+实例名称,而SQL Server Express安装时,我没有填写实例名称,然后就想当然的认为没有实例名称。不过经过试验,我知道SQL Server Express的数据库名是:计算机名+SQLEXPRESS。
~······
现在是直接检索本机数据库,直接提供出来了,只要进行选择就可以了
看上去4G
但是赶紧和原来的差不多
界面啊,组件之类的·········
http://msdn.microsoft.com/en-us/library/bb521687.aspx
Installation Error Messages
3/27/2009
The following table shows the error messages you might encounter and the resolutions to correct them when installing Windows Embedded Standard.
http://blog.augustoalvarez.com.ar/2009/03/29/windows-embedded-standard-2009-step-by-step-deployment-part-i/
Windows Embedded Standard 2009 Step-by-Step Deployment – Part I
WES 2009 contains the same kernel as Windows XP with a few improvements:
* Windows XP kernel with SP3 included
* Internet Explorer 7
* Windows Media Player 11
* Silverlight 1.0
* .Net Framework 3.5 (including also 1.0, 1.1 and 2.0).
* IPv6 support
7. Now select the SQL Server where the DB should be stored. I’m selecting it the local SQL Server Express instance already installed. Click on “Next”.
Solution
Wait 5-10 minutes and click on “Retry”.
You don’t believe it? Check this MSDN article about it. It’s related about how the installer access and closes the database during the installation process.
···········
Windows Embedded Standard开发初体验(四) – maning_pub的个人空间 – ITPUB个人空间 – powered by X-Space
http://space.itpub.net/15040223/viewspace-417416
Preparing and Installing Windows XP Embedded Images – Part I: Setting up the Environment « Augusto Alvarez
http://blog.augustoalvarez.com.ar/2009/01/07/preparing-and-installing-windows-xp-embedded-images-part-i-setting-up-the-environment/
Preparing and Installing Windows XP Embedded Images – Part III: Using Remote Boot « Augusto Alvarez
http://blog.augustoalvarez.com.ar/2009/01/07/preparing-and-installing-windows-xp-embedded-images-part-iii-using-remote-boot/
Preparing and Installing Windows XP Embedded Images – Part II: Building Images « Augusto Alvarez
http://blog.augustoalvarez.com.ar/2009/01/07/preparing-and-installing-windows-xp-embedded-images-part-ii-building-images/
private void Form2_Load(object sender, System.EventArgs e)
&leftsign;
Win32.AnimateWindow(this.Handle,500, Win32.AW_BLEND);
&rightsign;
public class Win32
&leftsign;
public const Int32 AW_HOR_POSITIVE = 0×00000001;
public const Int32 AW_HOR_NEGATIVE = 0×00000002;
public const Int32 AW_VER_POSITIVE = 0×00000004;
public const Int32 AW_VER_NEGATIVE = 0×00000008;
public const Int32 AW_CENTER = 0×00000010;
public const Int32 AW_HIDE = 0×00010000;
public const Int32 AW_ACTIVATE = 0×00020000;
public const Int32 AW_SLIDE = 0×00040000;
public const Int32 AW_BLEND = 0×00080000;
[DllImport("user32.dll", CharSet=CharSet.Auto)]
public static extern bool AnimateWindow(
IntPtr hwnd, // handle to window
int dwTime, // duration of animation
int dwFlags // animation type
);
&rightsign;
1.AW_HOR_POSITIVE = $00000001; // 从左向右开屏
2.AW_HOR_NEGATIVE = $00000002; // 从右向左开屏
3.AW_VER_POSITIVE = $00000004; // 从上向下开屏
4.AW_VER_NEGATIVE = $00000008; // 从下向上开屏
5,AW_CENTER = $00000010; // 从中心向四周扩展,在关闭动画中则为从四周向中心收缩
6.AW_HIDE = $00010000; // 关闭时候与前面的定义组合使用,如AW_HIDE or AW_CENTER
7.AW_ACTIVATE = $00020000; // 与1-5组合,开屏使用
8.AW_SLIDE = $00040000; // 与1-5 + 6/7 组合,产生滑行效果
9.AW_BLEND = $00080000; // Win2000下使用,淡入淡出效果
“““`
using System;
using System.Drawing;
using System.Windows.Forms;
namespace FadeForm
&leftsign;
public partial class FadeForm : Form
&leftsign;
#region Variables
/// <summary>
/// The opacity the form is transitioning to.
/// </summary>
private double targetOpacity;
/// <summary>
/// The time it takes to fade from 0 to 1 or the other way around.
/// </summary>
private double fadeTime = .35;
/// <summary>
/// The opacity that the form will transition to when the form gets focus.
/// </summary>
private double activeOpacity = 1;
/// <summary>
/// the opacity that the form will transition to when the form doesn\’t have focus.
/// </summary>
private double inactiveOpacity = .85;
/// <summary>
/// the opacity that the form will transition to when the form is minimized.
/// </summary>
private double minimizedOpacity = 0;
/// <summary>
/// WindowsMessage that is being held until the end of a transition.
/// </summary>
private Message heldMessage = new Message();
/// <summary>
/// Timer to aid in fade effects.
/// </summary>
private System.Windows.Forms.Timer timer;
#endregion
#region Properties
/// <summary>
/// The opacity the form is transitioning to.
/// </summary>
public double TargetOpacity
&leftsign;
set
&leftsign;
targetOpacity = value;
if (!timer.Enabled) timer.Start();
&rightsign;
get &leftsign; return targetOpacity; &rightsign;
&rightsign;
/// <summary>
/// The time it takes to fade from 1 to 0 or the other way around.
/// </summary>
public double FadeTime
&leftsign;
get &leftsign; return fadeTime; &rightsign;
set
&leftsign;
if (value > 0) fadeTime = value;
else throw new ArgumentOutOfRangeException("The FadeTime must be a positive value");
&rightsign;
&rightsign;
/// <summary>
/// The opacity that the form will transition to when the form gets focus.
/// </summary>
public double ActiveOpacity
&leftsign;
get &leftsign; return activeOpacity; &rightsign;
set
&leftsign;
if (value >= 0) activeOpacity = value;
else throw new ArgumentOutOfRangeException("The ActiveOpacity must be a positive value"); if (this.ContainsFocus) TargetOpacity = activeOpacity;
&rightsign;
&rightsign;
/// <summary>
/// the opacity that the form will transition to when the form doesn\’t have focus.
/// </summary>
public double InactiveOpacity
&leftsign;
get &leftsign; return inactiveOpacity; &rightsign;
set
&leftsign;
if (value >= 0) inactiveOpacity = value;
else throw new ArgumentOutOfRangeException("The InactiveOpacity must be a positive value"); if (!this.ContainsFocus && this.WindowState != FormWindowState.Minimized) TargetOpacity = inactiveOpacity;
&rightsign;
&rightsign;
/// <summary>
/// the opacity that the form will transition to when the form is minimized.
/// </summary>
public double MinimizedOpacity
&leftsign;
get &leftsign; return minimizedOpacity; &rightsign;
set
&leftsign;
if (value >= 0) minimizedOpacity = value;
else throw new ArgumentOutOfRangeException("The MinimizedOpacity must be a positive value"); if (!this.ContainsFocus && this.WindowState != FormWindowState.Minimized) TargetOpacity = inactiveOpacity;
&rightsign;
&rightsign;
#endregion
/// <summary>
/// Creates a new FadeForm.
/// </summary>
public FadeForm()
&leftsign;
this.timer = new System.Windows.Forms.Timer();
this.SuspendLayout();
this.timer.Interval = 25;
this.timer.Tick += new System.EventHandler(this.timer_Tick);
this.Deactivate += new System.EventHandler(this.FadeForm_Deactivate);
this.Activated += new System.EventHandler(this.FadeForm_Activated);
this.Load += new System.EventHandler(this.FadeForm_Load);
&rightsign;
/// <summary>
/// Turns off opacitiy fading.
/// </summary>
public void DisableFade()
&leftsign;
activeOpacity = 1;
inactiveOpacity = 1;
minimizedOpacity = 1;
&rightsign;
/// <summary>
/// Turns on opacitiy fading.
/// </summary>
public void EnableFadeDefaults()
&leftsign;
activeOpacity = 1;
inactiveOpacity = .85;
minimizedOpacity = 0;
fadeTime = .35;
&rightsign;
#region WindowsMessageCodes
private const int WM_SYSCOMMAND = 0×112;
private const int WM_COMMAND = 0×111;
private const int SC_MINIMIZE = 0xF020;
private const int SC_RESTORE = 0xF120;
private const int SC_CLOSE = 0xF060;
#endregion
/// <summary>
/// Intercepts WindowMessages before they are processed.
/// </summary>
/// <param name="m">Windows Message</param>
protected override void WndProc(ref Message m)
&leftsign;
if (m.Msg==WM_SYSCOMMAND&line;&line;m.Msg == WM_COMMAND)
&leftsign;
//Fade to zero on minimze
if (m.WParam == (IntPtr)SC_MINIMIZE)
&leftsign;
if (heldMessage.WParam != (IntPtr)SC_MINIMIZE)
&leftsign;
heldMessage = m;
TargetOpacity = minimizedOpacity;
&rightsign;
else
&leftsign;
heldMessage = new Message();
TargetOpacity = activeOpacity;
&rightsign;
return;
&rightsign;
//Fade in if the window is restored from the taskbar
else if (m.WParam == (IntPtr)SC_RESTORE
&& this.WindowState == FormWindowState.Minimized)
&leftsign;
base.WndProc(ref m);
TargetOpacity = activeOpacity;
return;
&rightsign;
//Fade out if the window is closed.
else if (m.WParam == (IntPtr)SC_CLOSE)
&leftsign;
heldMessage = m;
TargetOpacity = minimizedOpacity;
return;
&rightsign;
&rightsign;
base.WndProc(ref m);
&rightsign;
//Causes the form to fade in.
private void FadeForm_Load(object sender, EventArgs e)
&leftsign;
this.Opacity = minimizedOpacity;
TargetOpacity = activeOpacity;
&rightsign;
//Performs fade increment.
private void timer_Tick(object sender, EventArgs e)
&leftsign;
double fadeChangePerTick = timer.Interval * 1.0 / 1000 / fadeTime;
//Check to see if it is time to stop the timer
if (Math.Abs(targetOpacity – this.Opacity) < fadeChangePerTick)
&leftsign;
//There is an ugly black flash if you set the Opacity to 1.0
if (targetOpacity == 1) this.Opacity = .999;
else this.Opacity = targetOpacity;
//Process held Windows Message.
base.WndProc(ref heldMessage);
heldMessage = new Message();
//Stop the timer to save processor.
timer.Stop();
&rightsign;
else if (targetOpacity > this.Opacity) this.Opacity += fadeChangePerTick;
else if (targetOpacity < this.Opacity) this.Opacity -= fadeChangePerTick;
&rightsign;
//Fade out the form when it losses focus.
private void FadeForm_Deactivate(object sender, EventArgs e)
&leftsign;
this.TargetOpacity = inactiveOpacity;
&rightsign;
//Fade in the form when it gaines focus.
private void FadeForm_Activated(object sender, EventArgs e)
&leftsign;
TargetOpacity = activeOpacity;
&rightsign;
&rightsign;
&rightsign;
【半原创】在media center 2005中自定义键盘和遥控器按纽行为 – CCF精品技术论坛
http://bbs.et8.net/bbs/showthread.php?t=703260
C#中显示/激活已运行的程序 – buf – IT博客网
http://www.cnitblog.com/buf/archive/2008/06/11/45467.aspx
winio模拟键盘鼠标的输入 – 第2页 – 看雪软件安全论坛
http://bbs.pediy.com/showthread.php?p=225891
C#下的WINIO应用(转帖) — HotPower的文潭
http://blog.ednchina.com/hotpower/176900/message.aspx
pinvoke.net: SendInput (user32)
http://www.pinvoke.net/default.aspx/user32.SendInput
[C#] SendInput AutoClicker – The OK Library
http://theoklibrary.org/showthread.php?t=287
如何使用C#和windows自带的计算器通讯??
http://topic.csdn.net/u/20090228/15/64ee6a0a-62e6-4a56-a2d0-4251ced95eae.html
CodeProject: Onscreen Keyboard. Free source code and programming help
http://www.codeproject.com/KB/cpp/onscreenkeyboard.aspx?display=PrintAll&fid=500&df=90&mpp=25&noise=3&sort=Position&view=Quick&fr=26&select=1605922
WinIO初始化失败的几个原因 – 梦想天空 – 博客园
http://www.cnblogs.com/hesicong/archive/2008/12/11/1359048.html
求一个PC喇叭发声程序,要求能响应键盘中断而停止 其他开发语言 / 汇编语言 – CSDN社区 community.csdn.net
http://topic.csdn.net/t/20040902/15/3333888.html
C#下采用索引对WinIO的封装类(WinIO.cs)
http://www.dianyuan.com/wangping/ti/blog_article_view.php?blar_id=373
C#下采用索引对WinIO的封装类(WinIO.cs) – 软件 – 嵌入式公社 – 论坛
http://www.embcom.net/bbs/viewthread.php?tid=74&extra=page%3D1
C#中winio.dll模拟鼠标问题,很严重。大家救命啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
http://topic.csdn.net/u/20080413/14/8b9d2234-53c3-497a-ba74-9f5df6347fc6.html
C#下的WINIO应用(转帖)_冷水泡咖啡
http://hi.baidu.com/propel/blog/item/8e3588090b62c82c6b60fb50.html
c# hide windows
想控制一个窗口的显示、隐藏
private const int SW_HIDE = 0;
private const int SW_RESTORE = 9;
private int hWnd;
[DllImport("User32")]
private static extern int ShowWindow(int hwnd, int nCmdShow);
private void button1_Click(object sender, EventArgs e)
&leftsign;
Process[] p = Process.GetProcessesByName("notepad");
hWnd = (int)p[0].MainWindowHandle;
ShowWindow(hWnd, SW_HIDE);
&rightsign;
private void button2_Click(object sender, EventArgs e)
&leftsign;
Process[] p = Process.GetProcessesByName("notepad");
hWnd = (int)p[0].MainWindowHandle;
ShowWindow(hWnd, SW_RESTORE);
&rightsign;
&rightsign;
但是隐藏后MainWindowHandle是0了
因此必须先保存MainWindowHandle
我是用HASHTABLE 进程名/HANDLE
标签:and, hid, hide, ide, win20090807 c# WebBrowser NewWindow2
嵌套WEBBROWSER随便写了个程序,可是新窗口总是弹出IE。
找找资料,可以控制新窗口在本程序中打开,可是本程序又是全屏无菜单的,不想越做越复杂。先记录下吧。
如果你用的是VS2003,WebBrowser控件应该是作为ActiveX控件导入的,在该WebBrowser控件的NewWindow2事件内,有一个 AxSHDocVw.DWebBrowserEvents2_NewWindow2Event参数,你把该参数的ppDisp属性设置为你程序中的 WebBrowser控件的Application即可,这个WebBrowser可以是在另一个窗体内,示例代码如下:
private void axWebBrowser1_NewWindow2(object sender, AxSHDocVw.DWebBrowserEvents2_NewWindow2Event e)
{
Form1 frmWB;
frmWB = new Form1();
frmWB.axWebBrowser1.RegisterAsBrowser = true;
e.ppDisp = frmWB.axWebBrowser1.Application;
frmWB.Visible = true;
}
VS2005和2008自带的WebBrowser控件没有这个事件,只有一个NewWindow事件,但该事件的参数CancelEventArgs没有ppDisp属性
在AxWebBrowser中是像下面这样做的, 不知道2.0中这个WebBrowser实现, 难道又是个BUG?
private void axWebBrowser1_NewWindow2(object sender, AxSHDocVw.DWebBrowserEvents2_NewWindow2Event e)
{
//
// let the web browser does’t open new window.
//
e.ppDisp = this.axWebBrowser1.Application;
}
结论出来了: 又是一个BUG! (上一个是BackgroundWorker: http://community.csdn.net/Expert/topic/4707/4707944.xml?temp=.2000391)
请看feedback中心:
http://lab.msdn.microsoft.com/ProductFeedback/viewFeedback.aspx?feedbackid=c5aa05c2-73ce-40af-b6b1-7b5900cf4e9f
http://www.codeproject.com/KB/cpp/ExtendedWebBrowser.aspx
/* Rambling comments… */: Disappointing .Net Sockets article in MSDN Magazine this month
http://www.lenholgate.com/archives/000440.html
CodeProject: Testing TCP and UDP socket servers using C# and .NET. Free source code and programming help
http://www.codeproject.com/KB/IP/testingsocketservers.aspx
观察和理解模糊处理的输出
http://msdn.microsoft.com/zh-cn/ms227212(VS.80).aspx
大家好.谁做过Socket通信这一块.我自己建了个类库.自己感觉就很差.想请高人指点指点. .NET技术 / C# – CSDN社区 community.csdn.net
http://topic.csdn.net/t/20061211/10/5221154.html
c#下的Socket网络通信(类库) (转载) – chenlunpan的个人空间 – ITPUB个人空间 – powered by X-Space
http://space.itpub.net/7380741/viewspace-50965
Mike Woodring\’s .NET Sample Page
http://www.bearcanyon.com/dotnet/#ConnectionLimit
c#socket编程基础 – 一他糊涂 – 博客园
http://www.cnblogs.com/jacktu/archive/2007/11/21/966458.html
C#关机的代码怎样? .NET技术 / C# – CSDN社区 community.csdn.net
http://topic.csdn.net/t/20060225/09/4576395.html
c#关机时提示_百度知道
http://zhidao.baidu.com/question/48204712.html
c#关机 – .net–更高的追求! – 博客园
http://www.cnblogs.com/leewy/articles/52010.html
c#关机时自动退出程序_.Net技术文章_Asp.net_网站开发
http://www.diybl.com/course/4_webprogram/asp.net/netjs/2008823/137205.html
# /// <summary>
# /// 操作系统关闭时,关闭应用程序
# /// </summary>
# /// <param name="m">截获系统消息</param>
# protected override void WndProc(ref Message m)
# &leftsign;
# switch (m.Msg)
# &leftsign;
# case 0×0011://WM_QUERYENDSESSION
# m.Result = (IntPtr)1;
# break;
# default :
# base.WndProc(ref m);
# break;
# &rightsign;
# &rightsign;
20080824 winpe usb
制作XPE启动光盘的步骤_Jeamizhang的个人空间
http://hi.baidu.com/seipher/blog/item/bf577ef0ee7189c57931aa02.html
谁能告诉我PE和XPE 都是干什么用的,也是操作系统吗–IT快活林
http://www.itkhl.com/Article/itkhl-18033.html
xpe 常用组件 – TIMESEEKER – 网易博客
http://mjf860505.blog.163.com/blog/static/108434822008210102528442/
XPE教學—PECMD的使用說明 – NoName Information Team XPE – Yahoo!奇摩部落格
http://tw.myblog.yahoo.com/noname-team/article?mid=239&sc=1
DOS下加載USB2.0驅動後啟動XPE… – NoName Information Team XPE – Yahoo!奇摩部落格
http://tw.myblog.yahoo.com/noname-team/article?mid=2440&prev=7&next=1808
发个可以usb-zip启动老毛桃PE 070215版的GHO文件(页 1) – 启动盘制作技术区 – U盘及移动硬盘区 – 无忧启动论坛 – powered by Discuz! Archiver
http://bbs.wuyou.net/archiver/?tid-97159.html
嵌入式技术 : XPE USB 2.0启动技术
http://blogs.msdn.com/ningling/archive/2007/06/20/xpe-usb-2-0.aspx
NoName Information Team• 檢視主題 – USB開機說明和USB XPE簡易製作方法…
http://nonamexpe.duc.cc/viewtopic.php?t=287
USB開機版本的XPE GHO檔案 – 軟件相關資料庫 – Urien 技術論壇維基資料庫 (Urien Tech Wikipedia Database) – www.urien.info/tech – Powered by Discuz!
http://www.urien.info/tech/viewthread.php?tid=268
[原創] USB隨身碟 開機版本的XPE GHO檔案 – NoName Information Team XPE – Yahoo!奇摩部落格
http://tw.myblog.yahoo.com/noname-team/article?mid=120&sc=1
手把手教你做老毛桃最新PE的U盘启动盘(上网+影音) 深度系统技术论坛 – 深度,值得深入!
http://os.deepin.org/read.php?tid=112198
安装老毛桃WinPE到U盘和移动硬盘可行方法 – 小龚 – 网易博客
http://lzgong.blog.163.com/blog/static/2290626020084111355390/
分享這個:USB隨身碟 開機版本的XPE GHO檔案
http://blog.24reader.com/vincentlam/?p=499&akst_action=share-this
方得钱!?的QQ空间-给大家介绍几款 WinPE系统USB启动盘的制作和下载链接-腾讯博客-Qzone
http://qzone.qq.com/blog/273140220-1202982945
U盘及移动硬盘区 – 启动盘制作技术区 – 无忧启动论坛 – Powered by Discuz!
http://bbs.wuyou.com/forumdisplay.php?fid=45
利用Ghost制作U盘版WinPE,成功! &line; Crazy Software
http://cs72.com/winpe-in-usb/
大容量U盘/移动硬盘100%成功制作WINPE启动盘–IT快活林
http://www.itkhl.com/Article/itkhl-9512.html
我自己做的U盘Maxdos+Winpe启动盘 – U盘及移动硬盘区 – 启动盘制作技术区 – 无忧启动论坛 – Powered by Discuz!
http://bbs.wuyou.com/viewthread.php?tid=90407&extra=page%3D1&page=2
在Windows下利用Ghost32一次性完成U盘版PE的制作&line;U盘启动研究 – 数码之家 -最专业的数字产品交流网站MyDigit.cn
http://bbs.mydigit.cn/read.php?tid=23737
将 WinPE 安装到 U 盘 – 影子 – 网易博客
http://lxf2711.blog.163.com/blog/static/914657420080190135700/
U盘.移动硬盘.光盘启动盘(毛桃PE+红叶等著名DOS) 系统玩家 系统之家 xpsp3系统 深度XP sp3 系统下载 电脑公司8.5 雨林木风 GHOST 最新XP下载 操作系统下载 猪猪猫 IT技术 驱动之家 封装教程 下载 GHOSTsp3系统下载 – powered by phpwind.net – 军山来客 – 网易博客
http://luhntaii.blog.163.com/blog/static/328198320084278374462/
用U盘重装系统的方法_百度知道
http://zhidao.baidu.com/question/63281905.html
20080726 WinXP Embedded wpf
http://www.yippeesoft.com
http://hi.baidu.com/braver/blog/item/c8a8c22a2de0c22ed52af16a.html
WinXP Embedded嵌入系统的内幕
http://www.microsoft.com/windows/embedded/downloads/default.mspx
Windows Embedded Download Center
http://www.cnblogs.com/aawolf/archive/2008/07/04/1235393.html
Windows Embedded Standard开发初体验(三)
开始创建Silverlight的组件
http://code.google.com/p/sqlite-manager/downloads/list
sqlite-manager
Extension for Firefox and other apps to manage any sqlite database
https://connect.microsoft.com/windowsembedded
Welcome
to the Windows Embedded Standard Connect Site
http://blog.joycode.com/joy/category/1.aspx
WPF/E开发基础答疑(1)
http://bbs.wuyou.com/viewthread.php?tid=82184&highlight=Windows%2BXP%2BEmbedded%2B%B9%D9%B7%BD%CF%C2%D4%D8%B5%D8%D6%B7
Windows XP Embedded 官方下载地址
http://msdn.microsoft.com/zh-cn/library/ms771499.aspx
Windows Presentation Foundation 示例
Win32 时钟互操作示例
http://blog.joycode.com/joy/archive/2007/01/31/93046.aspx
互联网上的WPF实例
http://www.infoq.com/cn/news/2008/01/msdn-reader
WPF实现的又一个阅读器——MSDN Reader
http://windowsclient.net/wpf/starter-kits/sce.aspx
http://msdn.microsoft.com/zh-cn/library/ms771510.aspx
Windows Presentation Foundation 示例
迁移和互操作性示例
http://www.cnblogs.com/chinhr/archive/2007/06/18/787150.html
使用VS2005的 ClickOnce 技术实现按需下载组件(ZT)
http://windowsclient.net/wpf/starter-kits/sce.aspx#
Introducing the Syndicated Client Experiences Starter Kit Beta & Reader Beta SDK!
http://msdn.microsoft.com/zh-cn/vcsharp/aa969776.aspx
Windows Presentation Foundation
部署 WPF 应用程序 (WPF)
http://hi.baidu.com/bidisty/blog/item/7851c273d2a017198601b053.html
在WPF中动画式变换对象
http://msdn.microsoft.com/zh-cn/library/ms771429.aspx
Windows Presentation Foundation 示例
几何图形设计器演示
http://msdn.microsoft.com/zh-cn/library/ms771389.aspx
媒体库
此示例演示一些使用音频和视频媒体的基本应用程序。
此示例演示 Windows Presentation Foundation (WPF) 的特定功能,因此未遵循应用程序开发的最佳做法。 有关 Windows Presentation Foundation (WPF) 和 Microsoft .NET Framework 应用程序开发的最佳做法的全面介绍,请相应地参考以下主题:
http://msdn.microsoft.com/zh-cn/library/ms771542.aspx
Windows Presentation Foundation 示例
应用程序示例 (WPF)
应用程序示例是演示多种 Windows Presentation Foundation (WPF) 平台功能的端对端应用程序。 这些示例旨在演示实际使用方案,它们提供了一条了解 WPF 的广度的有效途径。
http://www.kuqin.com/windows/20071029/1926.html
WPF指南之XAML概述
http://bbs.wuyou.com/viewthread.php?tid=38217
Windows XP Embedded 制作指南
http://www.cndw.com/tech/program/2006042553087.asp
Microsoft Windows XP Embedded 开发工具概述
20080727 ahci sata winxp Embedded
http://www.yippeesoft.com
WindowsXP Embedded 是Windows Embedded family的一员,另外有一个哥哥叫做Windows CE. Windows CE的推出主要是针对小型的手持设备——掌上电脑,可能你已经见过或者听过很多这样的新闻了,就不多说了,所以WinCE也就基本局限于掌上电脑的市场;WindowsXP Embedded则是基于windows XP(NT)的技术,和XP家族的产品具有相同的功能,这个产品的推出是MS在掌上电脑市场发展之后发现越来越多Non-PC设备生产商需要对应的“操作系统”。举个例子,见过装有windows NT的数字示波器、逻辑分析仪吗?听上去很怪是不是?但是市场上的确是有这样的产品。失去这样的市场是以OS起家的MS所不能容忍的,眼见着Linux攻城略地,而CE的能力非常有限,这样,XP的移植也就顺理成章了。这就是WindowsXP Embedded的来历。" P, D7 G( j1 L _" m
终于组好了RAID 0,但无法缓存的控制??
安装好VISTA之后,想开启磁盘高速缓存,可是点击了之后,确定之后回来再看,又恢复成没有选择的样子,装了INTEL MATRIX 驱动之后,里面也没有任何的选择项,请问,如何设置??是不是正在拷贝的时候无法设置???
http://bbs.ocer.net/thread-177795-1-1.html
在Vista下,如图:
主板:Asus P5B-E(P965)
CPU: E6300
硬盘:希捷10代 7200转 320G SATAII
现在的状况: 硬盘工作在SATAII状态,NCQ打开。BIOS设置为ACHI,安装Winxp的时候按F6加载了南桥驱动。主板芯片组的最新驱动也已经安装。
现象:无法打开磁盘的写入缓存选项,勾上以后再进去钩就没有了.而且请看图中红色部分:此设备不允许更改其写入高速缓存设置
当设置为AHCI后,磁盘的控制器由默认的IDE变成了AHCI模式,
所以之前的HD TUNE之类的工具,由于自身的限制,它只能支持和识别依靠默认IDE模式安装的硬盘的信息,对于AHCI的模式的硬盘,它根本就不具备检测和识别能力。
而在采用了诸如AHCI或者RAID等磁盘控制器的时候,在设备管理器里的硬盘的属性里的写入缓存的设置也根本就不是由用户自己设置的,而是控制器配合其驱动决定的,和一般你可以在默认IDE模式下看到写入缓存的性质完全不一样。
这是华硕客服给我的解释,我想向大家求证一下是这样么?
有没有使用965板子sata2硬盘的朋友 开启了ahci模式,同时又可以打开磁盘写入缓存的朋友么?
是的,两个系统在安装前都已经加载AHCI驱动了。系统完成安装后使用Intel(R) Matrix Storage Manager查看 ncq sata2也都启用了
但就是开启不了磁盘写入缓存
启用AHCI模式即打开ICH8R和HDD下面所支持的SATA2与NCQ等.
装OS时要按F6加载Driver,如果想方便一些可以直接安装番茄花园3.0版的XP.
主菜单按6就可以支持串口硬盘了!
Try putting the BIOS in ATA mode (as opposed to AHCI), then boot/run feature tool.
Post back if it worked
http://hi.baidu.com/braver/blog/item/c8a8c22a2de0c22ed52af16a.html
1.按照微软开发文档配置你自己的硬件信息生成XXXXXX.SLD文件直接导入数据库。
2.打开Target Designer,新建一个配置文件名字随便输入,然后会看到以下界面,用右键点击左边图中的DemoPlatform组件,选择添加,就会在右边配置浏览器的顶端多出一个DemoPlatform.slx刚才添加的组件,在配置浏览器的顶端,展开DemoPlatform.slx,选中 Settings,这时右边的属性设置面板会显示如下可以设置的选项 。(另一种简单方法直接做标准通用的镜像:打开Target Designer,新建一个配置文件名字随便输入,右边配置浏览器的顶端多出一个Untitled.slx配置文件,在左边的SYSOFT组件列表中有 WINLOGO选项,用左键点击这个组件选择添加,展开Untitled.slx,选中Settings,这时右边的属性设置面板会显示如下可以设置的选项 。)
微软公司致力于提供最佳嵌入式技术、端对端开发工具、技术支持和资源,帮助您开发灵活、强大、智能化嵌入式设备,满足客户需求。
Windows Embedded 操作系统不仅可供您用来设计更加出色的嵌入式设备,而且是我们技术共享的成功范例。您可以利用免费版软件开发操作系统,不必进行项目前期投资。您只需在设备投放时支付工具和运行许可费。
Microsoft Windows 操作系统技术广泛部署于各种最常用的应用环境下,是开发下一代32位嵌入式系统的前沿平台。Windows Embedded 产品可以帮助您基于灵活的平台、结合易用的开发工具设计高度专用化设备。
Windows XP Embedded
Windows XP Embedded 是一种强大的组件化 Windows 操作系统。与 Windows XP Professional 一样,Windows XP Embedded 使用二进制 Win32 编程模型,可选装10,000多种功能组件,便于开发人员根据定制设备加以选择,在实现最优化功能的同时,控制或缩小外型尺寸。
oybook X31使用了一块编号为HTS542525K9S的日立品牌硬盘,并且依靠它在硬盘子系统测试项目中达到了几个高分。这倒不是说日立品牌的笔记本硬盘在性能方面有着极出色的表现,只是250GB的容量以及编号让我们知道它采用了垂直记录技术进行磁道写入,这将会较以往的硬盘拥有更好的平均读取速率以及更漂亮的顺序读取曲线。
113突发 47.9均速
HD Tach硬盘效能测试截图
同样是在综合项目评定中具有较高得分的还有dv2806TX的硬盘子系统。从HD Tach的测试中我们可以看到该笔记本使用了一块日立品牌编号为HTS542525K9S的250GB硬盘,该硬盘采用了SerialATA接口并具有 5400rpm的转速。通过测试我们看到,该硬盘继承了日立品牌一贯的高突发传输率达到了115.2MB/秒,并且平均传输速率也保持在了较高的 46.1MB/秒的水平。虽然顺序读取曲线并非十分平顺,但是在整个的下滑过程中并没有出现任何过大的波动。
Popis produktu HITACHI 250GB 5400rpm SATA 8MB TravelStar 5K250 HTS542525K9S
Velice výkonný 2,5" pevný disk od společnosti Hitachi s rychlostí 5400 otáček za minutu. Disk se vyznačuje použitím moderní ch technologiíjako jsou např. Adaptive Battery Life Extender (ABLE) pro maximální úsporu energie na potřebné minimum, Thermal Fly-height Control (TFC) zajišťuje snížení počtu chyb a iridio-mangano-chromové hlavy zvyšují spolehlivost disku. Samozřejmostí jsou fluidní ložiska pro snížení hlučnosti a vibrací a prodloužení životnosti.
Disk lze použít do většiny notebooků a přenosných externích přenosných rámečků
Windows Embedded Studio是一套开发工具,用来创建基于目标设备需求的定制Windows XP Embedded映像。
Windows Embedded Studio工具集包含以下工具:
( 1 ) 组件数据库:包含组件定义和其它支持数据的数据库。
( 2 ) 目标设计器:一个定制运行时映像的工具,
它使用选自数据库的组件来定制映像,然后组成实际的运行时映像。
( 3 ) 组件设计器:用来创建组件定义的工具。
( 4 ) 组件数据库管理器:用来把组件定义导入到数据库中的工具。
( 5 ) 特定于平台的工具:该工具用来分析硬件、
配置映像和转换数据。例如,将INF文件转换成组件。
从安装文件解压 IAAHCI.INF、IAAHCI.CAT、IASTOR.INF、IASTOR.CAT、IASTOR.SYS 和 TXTSETUP.OEM 等文件。
要解压这些文件,请使用下列命令行选项运行可执行文件(如:Intel® Matrix Storage Manager 5.0 的 IATA50_ENU.EXE): -A -A -PC:\\<路径>,
Microsoft Windows Vista*
1. 单击开始按钮。
2. 单击计算机。
3. 右键单击可用的硬盘,然后单击属性。
4. 单击硬件选项卡。
5. 选择可用的硬盘,然后单击属性。
6. 单击策略选项卡。
7. 如果可用,选中或取消选中性能优化。
Microsoft Windows XP*
1. 双击我的电脑图标。
2. 右键单击可用的硬盘,然后单击属性。
3. 单击硬件选项卡。
4. 选择可用的硬盘,然后单击属性。
5. 单击策略选项卡。
6. 如果可用,选择或取消选择启用硬盘的写高速缓存。
20080703 win2003 AntiVir
http://www.yippeesoft.com
你要是找密钥倒是有几个:
DBXYD-TF477-46YM4-W74MH-6YDQ8
V9MTG-3GX8P-D3Y4R-68BQ8-4Q8VD
J67F8-BB7GM-8VPH2-8YMXP-K49QQ
PGHBF-6K7PC-J9989-BGGJD-TKT3Q
免激活的方法,找的,不知道是否管用你试试吧。我也不用这么高级的文档编辑器的,2003是我最好的选择哟。。。。呵呵
1.安装 Office 2007 Ultimate 时勿输入序列号;
2.安装完成,不要运行 Word、Excell 等任何 Office 程序组件;
3.进入目录:C:\\Program Files\\Common Files\\Microsoft Shared\\Office 12\\Office Setup Controller\\Proof.en;找到此 xml 文件,用记事本打开编辑:
将语句 中的 AlwaysInstalled 替换为 neverinstalled,保存文件后退出。
4.充分享受 Office 2007 Ultimate 吧,没有激活次数的限制了
AntiVir Personal Edition 中文名叫“小红伞”,是一款相当优秀的免费杀毒软件,主要特色是系统资源占用很少,内存占用很低,杀毒能力不一般。在系统资源占用上只有NOD32能与其匹敌,但NOD32在木马查杀方面却很弱。我在使用了Avira+LNS(一款防火墙)后电脑几乎没有中过毒。主要缺点是有时会有误杀现象,不过,现在这种现象越来越少。07年4月份,小红伞升级版本,不支持windows 2003 操作系统,但通过以下设置我们发现可以实现完美安装。
第一种方法:下载 AntiVir Personal Edition 老版-07年以前的版本,安装后,下载 AntiVir Personal Edition 最新版本(Avira AntiVir PersonalEdition Classic Windows 2000 / XP / Vista 32 Bit and 64 Bit),覆盖安装即可。
第二种方法:下载AntiVir Personal Edition 老版,安装后到这里下载License file(授权文件)——这是小红伞的官方网站。下载后可将该文件直接放到Avira Antivir 的安装目录下。重新启动,升级病毒库后,你就会发现你的小红伞已经更新到最新版了。
下面的图片是我的windows 2003中Avira Antivir 所占的内存,你看是不是很省内存?
当然,你一切安装完毕后,需要对它进行一下设置。下载这个德国小红伞设置图,参照设置一下就可以了。
1.先下载S版旧版并安装好http://zhoujianjun.w1.kingtoo.net/antivir_sswin7u.exe。
P版旧版的http://www.ikzhe.com/soft/901.html
2.下载S版目前最新版http://dl1.antivir-pe.de/down/windows/prem_sec_winnt_en_hp.exe
或者来这边下载全版本:http://www.avira.com/en/downloads/download_personaledition_premium.html
3.来这边申请三个月的Key:https://license.avira.com/en/promotion-cj0ptfb6eh8cmw6a101r
或是这边申请P版6个月的Key:https://license.avira.com/en/promotion-t0q1aatr05zwftftgnqr
4.安装新版,并选择重新安装,导入Key之后重新开机即可享用。
附上小红伞个版本之间的差别
http://www.free-av.com/en/download/2/avira_antivir_premium.html
在WIN2003使用AntiVir Personal Edition2008年1月6日 23:31:20 发布:admin 认识红雨伞后彻底喜欢上了他,今天重装系统后发现不能在WIN03上安装,网上查了下原来是07年4月更新后的版本不可以在WIN03上使用。还好我有旧版本。
接着发现不能更新,网络上有个人修改版,但既然现在网络太可怕,所以不敢随便使用人家修改的东西。
其实官网下载个新的授权文件就可以了。
http://www.antivir-pe.com/freet/index.php?id=28&domain=free-av.com