Microsoft Windows XP:它为开发人员提供了什么?

Windows XP源代码外泄:初步分析确认真实性 然而,随着时间的推移,许多用户已经转向更新的操作系统版本,如Windows 7、Windows 8和Windows 10。我们建议用户采取适当的安全措施,并考虑升级到更新的操作系统版本,以获得更好的安全保护。源代码是构成操作系统的核心部分,它包含了操作系统的内部工作原理和功能的实现细节。源代码泄露可能会导致严重的安全风险,因为黑客和恶意分子可以利用泄露的代码来寻找操作系统中的漏洞和弱点,进而发动攻击。泄露的源代码使得黑客有可能发现并利用操作系统的漏洞,从而对用户的系统进行攻击。 阅读详情
Microsoft Windows XP:它为开发人员提供了什么?

摘要:本文介绍 Microsoft Windows XP 的一些新特性并探讨这些变化给 Windows 软件带来的影响。集中讨论了 Windows XP 的新外观和 ComCtl32、并列组件共享,以及快速用户切换。

简介

关于 Microsoft® Windows® XP,一个好消息当然是它具有各种精彩的新特性和能力。其次是,虽然系统有些变化,但只要您能为 Windows 编写成功的程序,您就能够为新的 Windows XP 写出更好的程序。

简单地说,Windows XP(Beta 版代号为“Whistler”)是 Microsoft 期待已久的操作系统,它以 Microsoft Windows 2000 的优点为基础,揉和并扩展了 Windows Millennium Edition (Me) 对个人用户的亲和力。

为 Windows XP 编写程序需要一些新的技巧,不过这些技巧并不艰深。更重要的是我们一再提起(尤其是推出 Windows 2000 之后更加强调)的那些话:您的应用程序越“遵纪守法”,在 Windows XP 上它们就运行得越好。Windows XP 应用程序应该遵循您在幼儿园时学到的规则:共享您的资源,与他人和平共处,并且要守规矩。也就是说要“合作”。

初释 Windows XP

Windows XP 是延续并准备替代 Microsoft Windows 2000 和 Microsoft Windows Me 的 Microsoft Windows 操作系统。Windows XP 采用 Windows 2000 的代码基础,继承了它的可靠性和良好性能。Windows XP 还继承和加强了 Windows Me 操作系统的新特性:系统恢复、Windows Media Player、Windows 镜象获取,等等。

对于客户端的机器,Windows XP 有专业版和家用版两个版本。专业版提供公司和其他企业所需的功能,适于商用和替代 Windows 2000 Professional。家用版则适于个人用户和替代 Windows Me。Windows XP 的两个版本都包含一些共同的特性,例如对数字媒体的增强支持,快速用户切换新带来的计算机共享能力。

在服务器端,有三种与 Windows 2000 服务器配置对应的版本:服务器;高级服务器,适于部门级服务器、业务单元、Web 应用支持等;数据中心服务器,适于高可用性和关键任务应用。本文集中讨论客户端版本。至于各服务器版本,它们各有一些类似的特性组合,我们将在以后的文章中再讨论。

为了实现提供一套同时满足商务和个人应用的承诺,Windows XP 增加了一些新特性。也许最明显的一点就是它有一个全新的外形,完全是新的外观和更大、更好的图标,用最小的开发成本就可以给用户更好的使用体验。任务栏上有许多改进,使用户更易于组织信息,例如把同一应用程序的窗口放到一起。此外还有更多的内容:增强的电源管理,并列组件共享,快速用户切换,支持高密度显示,Passport 集成,更易于使用的气球提示,还有 GDI+。这个列表并未包含全部内容。

在这篇文章中,我们将简要地介绍您需要了解的一些重要方面:用新的 ComCtl32 版本 6 编写新 UI,运用并列共享,编写利用 Windows XP 快速用户切换和远程桌面特性的应用程序。在后面几个月,MSDN 将更深入地介绍这些和其他更多专题。PSDK 包含关于这些特性的信息。Windows XP Beta 2 SDK 版有更多内容,将随 Beta 2 软件分发给所有的 MSDN 订户。如果您不是订户,在今年晚些时候才可能得到它。

新面貌

Microsoft Windows 的外观风格自 Windows 95 以来一直未发生显著改变。轮廓分明的灰色三维对话框控件已成为 Windows 的同义词。随着 Windows XP 的发布,我们将看到一个全新的外观风格。Windows XP 以由 Windows 95 Plus Pack 首先引入的桌面主题为基础,提供多个主题来确定不同的系统外观风格。原来的桌面改变用户色彩配置、字体和字号、墙纸设置,而 Windows XP 主题改变控件、窗口边框和菜单的绘制方式。

任务栏已被全面翻新。由于任务栏空间有限,窗口开得越多,按钮就变得越小。我们采取了措施来消除这个问题。大家都曾经碰到过任务栏按钮变得太小而几乎无法使用的情形。如果由于同时打开许多窗口而导致按钮太小,Windows XP 将把按钮分组。例如,假设用户打开了五个 Microsoft® Word 文档,显示的按钮将是一个而不是五个。只要单击这个按钮,就会出现一个菜单,列出所有打开的窗口。

提醒框也得到了整理。提醒框本来是用来向用户提示当前问题的,但后来逐渐失去了这个作用而成为启动应用程序的地方。Windows XP 把当前并未给用户提示信息的图标隐藏起来,从而减少了混乱。用户通过 > 形符号可以显露隐藏的图标,也可以关闭这种行为,选择哪些图标总是显示而哪些总是隐藏。

Windows 打开的方式改变了。为了使桌面整洁,除了回收站外,所有图标都移到了新的更大的开始菜单中。在开始菜单中,系统提供的功能单独出现在一个蓝色的区域中,旁边显示用户最常使用的应用程序。为了使桌面更加整洁,Windows XP 会定期搜索没使用过的应用程序图标,然后由桌面向导帮助用户把它们从桌面上清除掉。放在桌面上的所有数据则保持原样。

Windows XP 本身提供两种外观风格:传统 Windows 风格和我们称为“Whistler 风格”的新风格。在此基础上,Windows XP 有让 ISV 与新风格同步的机制,同时 Microsoft 会逐步添加可体现个人偏好的各种风格,您为 Windows XP 编写的应用程序将能够自动接受它们。

乍一看,多重 Windows XP 风格很象 Window 媒体播放机这类程序的替换外观功能,但实际上有些区别。主题可改变操作系统的外观风格,但仍然提供和 Windows 早期版本一致的 UI。这一点很重要,因为主题是在整个系统范围内应用的。改变应用程序的外观是可行的,例如去除一些按钮。但在操作系统层次上,这并不合适。主题文件的格式不是公开的。Microsoft 保留了主题的设计控制权,以保持一致的用户界面并能够确保设计的连续性。Windows XP 将不提供主题开发工具。

您一定很熟悉传统风格,就是那种灰灰的、轮廓分明的窗口和对话框。Windows XP 的这个选项允许用户保持熟悉的界面。Windows XP Whistler 风格提供了一套全新的外观效果。尽管新的外观风格和传统窗口有很大差异,总体效果还是让人感到相当熟悉。Windows XP 新增加了一种按钮和选项卡,当鼠标指针从上面移过时,它们会改变颜色,和 Web 页面上的热点十分相似。

图 1:Windows XP 开始菜单

主题和控件

通过 Windows XP,Microsoft 把 User Win32 控件和 ComCtl32 版本 6 中的通用外壳控件结合起来了。这些新控件使用新的主题管理程序来显示适当的外观效果。

在以前的 32 位 Windows 中,部分控件在 User32.dll 中实现,其他的则在 ComCtl32 中实现。窗口非客户区域(例如边框和菜单)的显示是由 User32.dll 完成的。User32.dll 是操作系统的核心组件,因此它只能与相应特定版本的操作系统一同使用。对于 Windows 2000 和 Windows Me,ComCtl32 受 Windows 文件保护机制控制,因此只能通过系统更新或 Service Pack 来更改。对于以前版本的 Windows,ComCtl32 实际上是和许多系统组件和应用程序一同分发的,常常造成安装一种应用程序或某个系统组件后另一种应用程序无法运行的情况。Windows XP 和最新的 Windows 2000 Service Pack 使用相同的 ComCtl32。

基于并列组件共享,Windows XP 为 Windows 组件开发指出了新方向。请记住控件外观是由新的主题来确定。为了能在 Windows 中引入新外观风格,并使设计人员能够创新设计 UI 的外观风格又不要求更改核心功能,Microsoft 正在引入主题管理程序 uxtheme.dll。这个新的 DLL 提供新控件的绘制支持,并且向控件提供信息 API 来确定各个部分的位置。所有应用程序的非客户区域,包括滚动条和标题栏,除非是自定义绘制的,均由它产生具有新 Windows XP 风格的外观。这意味着每一个应用程序都将涉及主题管理程序。主题管理程序和 ComCtl32 一起来设置大部分 Windows 应用程序的主题,同时提供一定的灵活性,使 ISV 设计者能够让新的 Windows XP 介入他们的应用程序。

我们充分意识到新的 ComCtl32 可能会中断一些应用程序。为了防止出现这种情况,ComCtl32 版本 6 以共享程序集的形式和 ComCtl32 版本 5 并列安装在 System32 目录下。只有向操作系统声明能够使用这个新 DLL 的应用程序才能获取它。现有应用程序如果不提供声明就继续使用 ComCtl32 版本 5。Windows XP 同时提供版本 5 和 6 的 DLL 并以并列方式安装。在后面的小节我们将进一步讨论有关声明的问题。

注意:ComCtl32 版本 6 将不提供给早期的 Windows 版本;它们将继续使用 ComCtl32 版本 5。版本 5 不提供新外观效果、超链接控件或分组查看等特性。如果您使用这些特性,就应该在 Windows 95、Windows 98 和 Windows 2000 上测试您的应用程序。

要确保您的应用程序在 Windows XP 中使用新的外观风格,您需要使用一个声明来指定对 ComCtl32 版本 6 的依赖,从而确保链接到 ComCtl32。如果您有任何自行绘制的控件,那么今后要通过 uxtheme.dll 来绘制它们,而不是自己绘制。如果您想让它们看起来和 UI 的其他部分相似,就应该这样做。

下面这段代码绘制可识别主题的按钮:

rtButton.top = 100;rtButton.left = 10;rtButton.bottom = 130;rtButton.right = 200;hTheme = OpenThemeData(hWnd, L"Button");DrawThemeBackground(hTheme, hdc, BP_PUSHBUTTON,  PBS_NORMAL, &rtButton, NULL);DrawThemeText(hTheme, hdc, BP_PUSHBUTTON, PBS_NORMAL, wzTMB, wcslen(wzTMB),DT_CENTER | DT_VCENTER | DT_WORD_ELLIPSIS | DT_SINGLELINE, 0, &rtButton);

创建自行绘制的按钮的一个常见原因是想添加位图。现在,ComCtl32 版本 6 的按钮通过与一个图象列表相关联,能够结合开发人员提供的位图。无论您是更新现有应用程序,还是编写新应用程序,一定要用 ComCtl32 版本 6 声明和版本 5 测试您的应用程序,看看您的窗口、对话框和新外观放在一起效果如何。

下面的代码绘制带位图的按钮:

Button_ImageList.himl = himl;Button_ImageList.uAlign = BUTTON_IMAGELIST_ALIGN_LEFT;Button_ImageList.margin.top = 3;Button_ImageList.margin.bottom = 3;Button_ImageList.margin.left = 3;Button_ImageList.margin.right = 3;hwndImageBtn = CreateWindow(L"Button",wzText,WS_CHILD | BS_PUSHBUTTON,0,0,0,0,hWndParent,
NULL,hInst,NULL);Button_SetImageList(hwndImageBtn, &Button_ImageList);Button_GetIdealSize(hwndImageBtn, &sizeBtn);SetWindowPos(hwndImageBtn, hWndParent, 10, 10, sizeBtn.cx, sizeBtn.cy, SWP_SHOWWINDOW |
SWP_NOZORDER | SWP_NOACTIVATE);

注意:如果您用 Microsoft Internet Explorer 技术以 HTML 绘制 UI,您可以在 HTML 中放一个元标记来确保 HTML 控件采用主题。

注意:提醒一下,对于第三方扩展,在您将它们全部进行测试之前,请不要为它们设置主题。关于主控第三方应用程序的情形,我们将在一篇预定于 2001 年 3 月发表的 MSDN 文章中讨论如何在您的进程中处理其他应用程序。

图标

与传统图标相比,Windows XP 中的图标不仅看起来漂亮,而且能够容纳更多细节来表示更复杂和完善得多的信息。新图标可支持最多 24 位的色彩深度,在 Alpha 通道中支持 8 位掩码。用于图标、平铺和缩略视图中的图象可以是 48x48 象素那么大。顺便说一句,以平铺显示图标是表示信息的绝好的新方法。这种图标带有两三行注释,您可以在图标旁边标明关键信息。

图标格式并未改变,Microsoft 已在图象列表 API 中添加支持来显示 32 位的图标。为了正确制作这些图标,使它们在早期版本的 Windows 中也能使用,您需要为每个图标制作多幅图象,如图 2 所示。

图 2:多幅图标图象

在这个例子中,前三个图象用于 16 色的安全模式。后面三个图标用于 Windows XP 256 色模式。最后三个图标有 Alpha 通道,仅适用于以 24 位颜色运行的 Windows XP 或更高版本的操作系统。

请注意,在图标格式中这些图象应该按顺序排列。如果顺序错了,低版本 Windows 抽取这些图标时性能会很差。这意味着内存错误和不正确的绘制。还要注意低版本 Windows 有 10 个图标的资源限制,而 Whistler 支持包含上千个图标资源的图标文件。

可以这样来看待新的图标:过去您用象 Microsoft 画笔这样相对简单的工具来创建图标,而现在您需要用 Photoshop。

注意:Gamani 工具、GIF Movie Gear for Icons 可以生成 24 位色彩、八位 Alpha 通道的 Windows 图标 (ICO) 文件。请参考 http://www.moviegear.com/foricons。

并列共享

新 UI 的运行依赖于一个满足并列共享条件的结构。作为版本管理和 DLL 问题的一个解决方案,Microsoft 极力推荐应用程序应采用并列版本管理策略。正如 ComCtl 版本 6 实施所显示的,并列组件是 Windows 开发的未来。这一节我们将概述 Windows XP 并列共享的新特性。在 2001 年 3 月,MSDN 将发表一篇文章进一步深入讨论这个主题。

有关并列组件共享问题和 DLL 重定向的背景知识,请参阅 David D'Souza、BJ Whalen 和 Peter Wilson 撰写的“在应用程序中实施并列组件(扩展)”(英文)。

应用并列组件时,一个组件的多个版本将被同时安装。应用程序被绑定到设计时采用并经过测试的特定版本的组件。

Windows XP 提供了基础结构来支持集合以及隔离的应用程序,包括 COM+ 和 Win32 程序。从 Win32 应用程序获取并列程序集不需要改变代码。应用程序可以使用最新的系统程序集而不会带来全局影响。

总之,由于隔离的应用程序比较可靠,它们具有更高的价值。在生成和分发过程中,它们都包含了所有必需的组件,不会受其他应用程序带来的变化的影响。隔离的应用程序使用一个 XML 文件作为声明,该声明包含对程序集或应用程序的自我描述。现在,所有的绑定和激活元数据,例如 COM 类、接口、类型库都存储在声明中,而不是注册表里。有两种类型的声明文件:应用程序声明(描述隔离的应用程序),以及程序集声明(描述各个程序集)。

隔离的应用程序可以使用并列程序集。程序集是进行命名、绑定、版本管理、部署和配置的基本单位。它们又有两种变体,即共享和私有。共享程序集安装在 Windows 目录中的 WinSxS 文件夹里,可供计算机上的多个应用程序使用。私有程序集部署在应用程序的目录结构中,并只有该应用程序才能使用。

对于应用程序开发人员,使用并列共享还有另一个好处,那就是计划可以更清晰,因为您的开发计划不会受所采用组件的发布计划的影响。

快速用户切换

Windows XP 引入了一种被称为“快速用户切换”的新功能。快速用户切换基于 Windows 2000 的计算机共享功能和 Windows 2000 Terminal Server 的多任务特性,它使多个用户可以很方便、快捷的共享同一台计算机。

调查表明 80% 的 Windows 个人用户和他们的家庭成员共用一台计算机。尽管 Windows 98 有一个叫做配置文件的功能,但很少有人使用。Windows 2000 提供了单独管理帐号的特性,却很难在家庭环境中使用。

Windows XP 改变了这一切。基于 Windows 2000 的配置文件,在安装过程中为所有用户创建帐号。如果需要,用户可以创建口令,但默认情况下系统不要求口令。一个友好的新欢迎屏幕代替了登录对话框,上面有用户名、图片或图标,而不是用户代号或别名。并且,新的控制面板小程序使编辑用户帐号更加简单。每个用户都有各自的设置,包括墙纸、音乐、图片、个人收藏夹等等。

在快速用户切换中,多个用户使用同一台计算机时无需注销。相反,各个帐号总是登录的,用户可以在所有打开的帐号之间迅速切换。

例如,父亲回家来,开始使用他的机器。他打开 PowerPoint 来编写一个文档。然后儿子 Billy 要求用一会儿计算机,他返回到“欢迎”屏幕,单击“Billy”,然后登录并开始玩游戏。但是,此时他的父亲仍然处于登录状态。如果需要,他无需注销就可以迅速切换回自己的打开的帐号。他的 PowerPoint 演示文稿仍然打开着,Internet 连接也会被保持。

一个相关的特性是远程桌面,它使用户能够从远程机器以自己的设置访问自己的数据。这种情形可能发生在一个网络里,也可能是用户在办公室中锁定了工作站,回家,然后从家中的一台计算机来远程控制工作站应用程序。

Windows XP 通过终端服务器来实现这些功能。对于开发人员,支持快速用户切换和过去可能遇到的一些情况大体相同,例如商业环境下的计算机共享、漫游用户、轮班用户、居家办公族,以及使终端服务器环境中的服务器程序运作良好。

MSDN 将在 2001 年 3 月的一篇文章中进一步探讨用户切换。请参阅这篇文章:为 Microsoft Windows 2000 Terminal Services 和 Windows NT Server 4.0 优化应用程序,终端服务器版(英文)。 现在,要记住为了支持快速用户切换,应用程序应遵循已经确认的 Windows 数据和设置管理规范 (http://msdn.microsoft.com/library/default.asp? URL=/library/specs/w2kserve.htm)(英文)。

  • 默认设置为在“我的文档”文件夹中存储用户创建的数据。

  • 正确分类和存储应用程序数据。

  • 遇到“访问被拒绝”消息时体面地降级。

此外,还要考虑一些因素。应用程序应满足下列条件:

  • 支持“所有用户”安装。

  • 正确检测其他实例。

  • 与服务通讯。

此外,要考虑当您的应用程序不在当前桌面时的情况:

  • 最小化处理器的占用。

  • 不要播放声音。

  • 不要更新显示。

  • 让系统资源能够检测到它。

其他特性

虽然从开发的角度我们还可以再介绍一些 Windows XP 的特性,但全面介绍这个操作系统显然已超出了本文的范畴。

电源管理:Windows XP 采用 Windows 2000 的电源管理特性,Robert Di Benedetto 的文章“在 Windows 2000 应用程序中支持 OnNow(电源管理)的窍门”(英文)很好地介绍了这个问题。

GDI+:Graphics Device Interface Plus (GDI+) 是 Microsoft Windows.NET 的一部分,提供二维矢量图形、图象处理和输出功能。通过添加新特性和优化现有特性,GDI+ 改进了 GDI(较早期 Windows 版本提供的图形设备接口)。Beta 2 SDK 将提供更多信息。

64 位 Windows:Microsoft 从一个源代码树同时为 32 位和 64 位的 Windows 构建 Windows XP。在未来某一天,您的应用程序将成为 64 位的,我们极力推荐您现在就开始使您的应用程序符合 64 位系统的要求。请参阅 MSDN Library 中 Platform SDK 的有关小节,标题为“Getting Ready for 64-bit Windows”(为 64 位的 Windows 作好准备)。

支持高密度显示:133 DPI 新型监视器已经面世,而 200 DPI 的监视器也将推出。您需要用 140 DPI 字体和大图标来测试您的应用程序。Windows XP 对话框、按钮、标题栏和语音输入都可以使用大字体。请在 2001 年 3 月的 MSDN 文章中查找有关如何为高密度显示编写应用程序的内容。





nt5src:Windows XP(NT5)的源代码。 泄漏不是我的。 我刚刚提取了档案和内阁文件-windows source code nt5src Windows XP(NT5)的源代码。 泄漏不是我的。 我只是提取了档案和内阁文件,并将它们上传到GitHub。 资料来源: 4赞线程: ://boards.4channel.org/g/thread/77894863/the-windows-xp-source-code-was-leaked-online MEGA 7zip和文件柜下载: : 免责声明:我没有这个源代码,也没有发现泄漏。 我只是将提取的存档重新上传到GitHUb。 立即下载

相关推荐

Flow Matching实战:5步搞定图像生成模型优化(附PyTorch代码)

本文提供了一份基于Flow Matching框架优化图像生成模型的实战指南。通过五个关键步骤,详细讲解了从环境配置、核心概念梳理到构建向量场网络、设计损失函数、编写训练循环以及选择ODE求解器进行采样的完整流程,并附有可运行的PyTorch代码,帮助开发者快速掌握这一高效的生成式建模技术。

weixin_29065959的博客 322

Windows XP的各种版本

其中有2个64位版,第一个是IA-64位版,2002年版是基于XP专业版,03年版是基于Windows Server 2003 IA-64位版,但是03年版是删除了XP的Luna主题,结束支持时间为2005年1月5号。其中SP1,SP2,SP3分别在2002年9月9日,2004年8月25日以及2008日4月21日发布,大部分以专业版或家庭版为基础的系统版本已在2014年4月8日结束支持。02年版在2002年10月28日发布,在专业版的基础上安装了媒体中心程序,此程序可沿续到Windows 8.1。

weixin_46237479的博客 1万+

2.13寸电子墨水屏HINK-E0213+esp8266

很久以前买的一块电子墨水屏,运气很好,这个型号HINK-E0213资料很全,而且微雪官网也有相关电路资料等。

梦境虽美,却不长. 3005

炸裂!Windows XP 2024 版,界面与操作吊打 Win11

戳下方名片,关注并星标!回复“1024”获取2TB学习资源!????体系化学习:运维工程师打怪升级进阶之路 4.0— 特色专栏—MySQL/PostgreSQL/MongoDBElasticSearch/Hadoop/RedisKubernetes/Docker/DevOpsKafka/RabbitMQ/Zookeeper监控平台/应用与服务/集群管理N...

民工哥的博客 9345

IPsec (主模式,野蛮模式)

IPsec vpn的主模式和野蛮模式

七汣的博客 3417

在 FlexSim 中建 AGV 小车模型时,如果设定“每次充电需要 2 小时才能充满”,应该如何配置 AGV 的充电功能?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 883

Windows XP SP1源代码编译方法(笔记)

注 :Windows XP SP1 的tools目录的编译工具可正常编译,但是在制作ISO的时候命令1默认是编译所有的版本SP补丁包,需要调整编译配置,正常编译完成后我直接替换Windows Server 2003的编译工具到Windows XP SP1 目录NT\tools,输入2的制作命令制作出了可安装ISO。将C:\binaries.x86fre 中的内容全部移动到 C:\svcpack.x86fre\usa\* 目录。

3624

Claude Code 里的 MCP 连接失败到底在报什么

文档还说明,HTTP 类型、stdio 类型等 MCP server 的接入方式不同,stdio server 会被 Claude Code 当作本地进程拉起,而 HTTP server 则需要 Claude Code 去访问一个已经存在的 HTTP endpoint。把这段输出翻成更接地气的运维语言,就是 Claude Code 已经知道我们想接两个外部能力,一个是 SAP ADT 官方 MCP,一个是 Chrome DevTools MCP,但当前没有一个完成握手。,因为它的信号更明确。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 152

Windows Xp Sp3官方简体中文版(原版) 纯净安装版 百度网盘下载

百度网盘下载: 1.链接:https://pan.baidu.com/s/1o-HcKddSG6IAz_0COKhq8Q 提取码:hkhr 2.扫码下载:                                                        转载于:https://www.cnblogs.com/xioawu-blog/p/1...

weixin_30912051的博客 4万+

R语言生存分析之限制性立方样条分析:样条回归、和多项式回归有什么不同?是否存在非线性关系、限制性立方样条cox回归模型

R语言生存分析之限制性立方样条分析:样条回归、和多项式回归有什么不同?是否存在非线性关系、限制性立方样条cox回归模型

statistics+insight+vista+power 635

2023华为od机试真题【恢复数字序列】C++

2023华为od机试真题【恢复数字序列】C++ 对于一个连续正整数组成的序列,可以将其拼接成一个字符串,再将字符串里的部分字符打乱顺序。如序列8 9 10 11 12,拼接成的字符串为89101112,打乱一部分字符后得到90811211,原来的正整数10就被拆成了0和1。现给定一个按如上规则得到的打乱字符的字符串,请将其还原成连续正整数序列,并输出序列中最小的数字. 输入描述

MISAYAONE的博客 5732

微软的豪赌:当年Windows XP如何成为经典?

对很多人来说,它不仅仅是一个操作系统,更是一段青春记忆——那蓝天白云的壁纸,那熟悉的启动音效,还有它带来的稳定和便利,都让人难以忘怀。据我消息来源,Neptune 后来成了个黑洞:凡是被砍掉的 Millennium(本来打算当 Windows 98 第三版,今年夏天要发)的功能,全都贴上了 Neptune 的标签。这个阶段,界面已经变成 Windows Me 和 Windows 2000 的混合体,登录界面几乎跟 Neptune 一样,而新版开始菜单的雏形,也首次出现了。更麻烦的是,当时这一切的根基是。

优快云资讯 1999

超实用Kimi越狱提示词!AI红队实战研究、无损保留原生功能、仅突破模型安全限制边界

超实用Kimi越狱提示词!AI红队实战研究、无损保留原生功能、仅突破模型安全限制边界

Chengbei11的博客 1750

Microsoft Windows XP SP3 官方原版镜像下载,绝对原版加系列号!

转:http://blog.sina.com.cn/s/blog_638c2e010100op5z.html 写在前面:1、 VOL是Volume Licensing for Organizations 的简称,中文即“团体批量许可证”。根据这个许可,当企业或者政府需要大量购买微软操作系统时可以获得优惠。这种产品的光盘卷标带有"VOL"字样,就取 "Volume"前3个字母,以表明是批量。...

weixin_30628077的博客 5万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

微软现在还提供xp服务器,微软中国:4月8日XP退休后 腾讯等将继续提供服务

微软中国:4月8日XP退休后 腾讯等将继续提供服务【TechWeb报道】3月2日消息,从Windows XP发布到2014年4月8日,微软这一截至目前最为成熟的系统寿命为12年零5个月。截至2012年第四季度,Windows XP全球用户份额40.7%,预计到2014年4月8日Windows XP全球用户份额约30%。但在中国地区,Windows XP的服务将会与其他国家和地区有所不同。微软中国官...

weixin_34642354的博客 2411

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

微软Windows XP——不灭的传说

据国外媒体报道,目前,微软自身有一个问题,或者确切的说,是由3个矛盾组成的一个大问题:1、Windows XP太过成功,不过只是自身的成功;2、根据微软的长远利益来看,Windows XP必须灭亡;3、即使出现Windows 7,Windows XP也不会轻易灭亡;  8年之久的Windows XP,甚至使得我们忘记了之前曾经使用过Windows 95、98和Windows Me。

ronalke的专栏 995

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

微软Microsoft系列产品

【桌面产品】Windows XP  Windows XP是微软的最新桌面操作系统,包含Windows XP Home和Windows XP Professional两个产品。Windows XP代表着高效而可靠的计算新标准,它通过强大的Internet和数字媒体功能让用户能够更加自由地感受数字世界,同时,超强的安全性和稳定性能够更加提高工作效率,为企业和个人用户带来全新的易于使用和更加兴奋的PC体

::: 移动互联网时代开发者 ::: 2763

Microsoft Windows XP--开发人员,准备好了?

Microsoft Windows XP:它为开发人员提供了什么? 摘要:本文介绍 Microsoft Windows XP 的一些新特性并探讨这些变化给 Windows 软件带来的影响。集中讨论了 Windows XP 的新外观和 ComCtl32、并列组件共享,以及快速用户切换。 简介关于 Microsoft® Windows® XP,一个好消息当然是它具有各种精彩的新特性和能力。其次是,

.NET博文收藏 588

微软Windows与Office发展史:从XP到2024的跨平台征程

自21世纪初以来,微软的Windows操作系统和Office办公套件经历了数次技术迭代,从本地化工具逐步演变为云端化、智能化的生产力平台。Windows XP到Windows 11的进化,以及Office 2003到Microsoft 365的转型,不仅反映了计算机技术的革新,更深刻改变了全球用户的工作与生活方式。本文将聚焦这两个核心产品的近二十年发展历程,剖析其技术突破、市场策略与生态影响。

WXbohos2008的优快云博客日记 2478
上一篇: Microsoft Windows CE 硬件兼容性列表
下一篇: 从 Visual Basic 6.0 到 Visual Basic.NET 的转换
techweb
博客等级 码龄19年 226粉丝 3842原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值