下一版本Windows® CE 开发工具Smart Device Extensions for Microsoft Visual Studio® .NET

初识 Smart Device Extensions
Larry Roof
Tonked.com
2001年10月23日

上个月我曾说过我会前往 Microsoft 学院,了解下一版本的小型工具的情况。此行的目的是为我不久要撰写的杂志文章和已签约的书籍搜集一些背景知识。但在回来的路上,我改变了我的初衷。我意识到不能独享这些信息,而应该与那些定期阅读我的栏目的忠实 Microsoft® eMbedded Visual Basic® 开发人员共享。

鉴于此行前我签订了一份严格的保密协议,我决定去寻求一些法律方面的建议 - 反正不管怎样,我都要这样做。不知道以前我是否曾提及,除了大街上的 11MB 移动无线 Internet 连接以外,硅谷工作的一个很酷的特点是那些身兼两职的自由职业者(例如我的理发师 Hank)。Hank 喜欢说:“我本来可以当一名律师,但我不想在大学浪费那八年时光”。他在硅谷附近经营了一家小理发店,提供免费法律咨询和廉价的理发服务。这就是身兼两职的自由职业者的观念。我认为身兼两职的自由职业是一个大有前途的行业。设想一下,我们每天总是感到时间不够用:没有足够的时间工作、照顾小孩以及应付生活中其他一些名目繁多的约会。其实,解决方法很简单 - 减少一半的约会。

例如,您可以选择能够提供精神抚慰的汽车服务中心。“Roof 先生,趁着我们换汽油、紧轮胎,您干嘛不躺在椅子上休息一会儿呢?”或者,选择能为您提供股票行情的快餐店。“Roof 先生,这是您的肉饼和油炸点心,请允许我打扰您,放弃科技股可能是个好主意。”

您应明白我的意思了。世事无常,什么都可能发生。但一如既往,我又跑题了。对 Hank 的访问让我失望至极。首先,他告诉我不能轻视那份保密协议。其次,对于理发他拒绝给我打折,尽管我的头发比十年前明显少得多。

但您知道我会怎么做吗?无论如何,我还是要与您共享。哈哈哈 - 我要笑对权威。那些赞成我的反叛态度的读者,请到 www.keeproofsbehindoutofjail.com 站点参加捐赠活动以表达您的支持。不用费多大功夫,您就可以从这里了解到下一版本的小型工具的具体情况。

注意:以下章节生动、明确而又直观地介绍了下一版本的 Microsoft 小型工具,但可能不适合未成年人、宠物和哑剧演员阅读。

将 Visual Basic .NET 引入设备

如果说下一版本的 Windows® CE 开发工具将很可能基于 .NET 技术,您应该不会感到惊讶。现在,我可以告诉您事实的确如此。下一版本的工具将称为 Smart Device Extensions for Microsoft Visual Studio® .NET。

对于曾使用过 eMbedded Visual Basic 的开发人员来说,在移动平台上使用 Visual Basic .NET 所提供的功能,前景好得简直令人难以置信。随着 Smart Device Extensions for Visual Studio .NET (SDE) 的发布,Microsoft 所做的工作展现了这一美好前景。SDE 提供了 .NET 框架的小型版本,允许您在 Visual Basic .NET 中生成应用程序,并且去除了以往防碍和限制移动开发人员的局限性。有了 SDE,开发人员便拥有了基于 Visual Basic 语言的工具,可以用来创建强大的应用程序,并且秉承了为使用 Microsoft eMbedded Visual C++® 所创建的应用程序而保留下来的原有的全部功能和灵活性。

对于那些仍不得不使用 Visual Basic .NET 的开发人员而言,最新版本的 Visual Basic 和旧版本的 Visual Basic 之间的差异实在太大了,无法在本文中尽述。但是,您将看到有关 .NET 小型框架的一般概述,并将了解 Smart Device Extension for Visual Studio .NET 所提供的新集成设计环境。

SDE 包含的内容

Smart Device Extensions for Visual Studio .NET 为开发人员提供了缩微版的 .NET 框架,称为“.NET 小型框架”。SDE 是一个 Visual Studio 集成包(或称为 VSIP),内置于 Visual Studio .NET 中。与 eMbedded Visual Basic 不同的是,SDE 无法独立运行。它要求安装 Visual Studio .NET。除此以外,为使用 SDE 构建的 Pocket PC 或 Pocket PC 2002 开发和配置应用程序不需要其他产品。

Smart Device Extensions 包括一组预先建立的设备配置文件。嵌入设备配置文件包含建立特定类型的应用程序(针对特定设备)所需的信息。例如,其中一个配置文件允许您使用 WinForms、ADO .NET 为 Pocket PC、Pocket PC 2002 或“Talisker”创建应用程序,并赋予您使用 XML Web 服务的能力。其他配置文件还允许您为蜂窝电话或第三方个人数字助理 (PDA) 创建应用程序。

配置文件可以特定于某种设备(如针对 Pocket PC,Pocket PC 通常是针对 Windows CE 平台的非特定平台),也可以是通用的配置文件(针对任何已移植 .NET 小型框架的平台)。

另外,SDE 还包括设备工具包(以前称为 SDK)。与 eMbedded Visual Basic 一样,设备工具包与 SDE 是分开的,可以独立安装和升级。

为什么不是 eMbedded Visual Basic 4.0?

您也许想知道:为什么对 Windows CE 的基于 Visual Basic 的开发工具进行这么大的改变?答案很简单。现有的 eMbedded Visual Basic 3.0 产品不能满足高级开发的需要。该引擎基于 Microsoft Visual Basic Scripting Edition (VBScript),对于简单的应用程序运行效果相当不错,但它有很多缺陷,无法满足高级开发的需要。eMbedded Visual Basic 开发人员往往要花费大量时间学习如何应付 eMbedded Visual Basic 内在局限性的各种技巧和解决方法。随着移动设备的不断普及,设备开发人员一直在寻找一种强大的、类型丰富的、面向对象的 Visual Basic 开发工具,就象在 Visual Basic .NET 中找到的那种工具一样。他们需要一种能利用 Internet、Web 服务和 XML 构建无线解决方案的工具。Smart Device Extensions for Visual Studio .NET 提供的正是这种工具。Microsoft 已将 .NET 框架移植到 Windows CE,这样就可以用 Visual C# .NET 和 Visual Basic .NET 编写面向设备平台的应用程序。

.NET 小型框架

如果不首先概要介绍 .NET 小型框架,任何有关 SDE 的讨论都将是不完整的。在使用 .NET 技术开发应用程序的过程中,不管是面向 .NET 框架还是面向 .NET 小型框架,编写应用程序都要利用 .NET 框架类提供的功能,并使用相同的编程模块。使用 SDE 开发应用程序时,面向的是 .NET 小型框架。

.NET 小型框架包含哪些内容?

.NET 小型框架简化了智能设备上的应用程序开发。.NET 小型框架包含两个主要组件:公共语言运行库(或称为 CLR)和 .NET 小型框架类库。

CLR 是 .NET 小型框架的基础。它负责在执行时管理代码,以及在加强代码安全性和准确性时提供核心服务(例如,内存管理和线程管理)。面向运行时的代码(例如 Visual Basic .NET 和 C# .NET)称为受控代码,而不面向运行时的代码(例如 eMbedded Visual C++)称为非受控代码或本机代码。从某种意义上讲,可以将公共语言运行库视为增强的 eMbedded Visual Basic 运行库。

注意:诸如由 Visual Basic .NET(面向 .NET 框架或 .NET 小型框架)生成的受控代码,是由公共语言运行库处理的。

.NET 小型框架类库是可重复使用的类的集合,可以使用这些类快速简便地开发应用程序。此框架可以移植到其他平台上,不管这些平台是由 Microsoft 还是由其他供应商创建的。这对您来说意味着什么?简而言之,您现在建立的、在 Pocket PC 上运行的编码技术和应用程序,同样可以很容易地在其他平台上运行。例如,运行在蜂窝电话上或另一个供应商的 PDA 上(如果已为此平台创建了一个 .NET 小型框架版本)。因此,使用 Visual Studio .NET 开发的编码技巧可以应用到任何支持 .NET 小型框架的平台上。

公共语言运行库的功能

公共语言运行库提供了一个代码执行环境,用于管理面向 .NET 小型框架的代码。代码管理的方式可以是内存管理、线程管理、安全管理、代码验证、编译以及其他系统服务。

即使移动应用程序是使用 Visual Basic .NET 编写的,且属于受控代码,仍能合并动态链接库中的功能。实际上,有了 Visual Basic .NET 对数据类型和结构的广泛支持,您可以利用 Windows CE API 实现使用 eMbedded Visual Basic 时梦寐以求的功能。

注意:与 eMbedded Visual Basic 不同,Visual Basic .NET 提供数据类型并包含结构支持,允许您方便地将 Windows CE API 中的功能合并到应用程序中。在 Visual Basic .NET 中,使用这些功能的需求远远低于在 eMbedded Visual Basic 中的需求。该功能允许您创建移动应用程序,并使之与使用 eMbedded Visual C++ 编写的应用程序中的功能相匹配。

CLR 用于增强性能。它充分利用了实时 (JIT) 编译,使受控代码可以用目标平台的本机语言运行。此功能允许您创建面向不同平台的应用程序,且不必针对运行这些应用程序的每个特定平台重新编译或生成可执行文件。

.NET 小型框架类库

.NET 小型框架类库是可重复使用的类的集合,这些类与公共语言运行库紧密集成在一起。Visual Basic .NET 应用程序利用这些库来派生功能。

正如您对面向对象的类库所期望的那样,.NET 小型框架类型使您能够完成各种常用的编程任务,包括字符串管理、数据收集、数据库连接和文件访问等。

注意:与 eMbedded Visual Basic(它与 Visual Basic 在功能上有很多不同之处)不同的是,Smart Device Extensions 实现了 .NET 框架的一个真子集。除了因大小限制、性能问题或目标操作系统的局限而不支持的功能以外,包含在 .NET 小型框架中的类所提供的接口与 .NET 框架中等价的类完全相同。在两个版本的 .NET 框架中,类的行为、属性、方法和枚举值均相同。这意味着您可以使用 Visual Basic .NET 编码技术来创建桌面和设备应用程序。

以下章节详细介绍通过 Smart Device Extensions 可以获得的功能。

窗体相关类

小型版本的 .NET 框架实现 System.Windows.FormsSystem.Drawing 类的子集。这些类可用于为设备应用程序构造丰富的、基于 Windows CE 的用户界面。与这些类的许多交互都由 Visual Studio .NET 的 Windows 窗体设计器组件管理。

.NET 小型框架下的 WinForms 实现包括对窗体的支持、.NET 框架中的大多数控件、集成第三方控件的能力,以及对位图和菜单的支持。

数据和 XML 类

.NET 小型框架包含一系列类,使您可以方便地合并数据,而不管数据源是关系型的还是非关系型的。在使用 Visual Basic .NET 创建的设备应用程序中,处理 XML 内容非常简单。.NET 小型框架下的数据和 XML 类的实现是 .NET 框架中数据和类的子集,而小型版本囊括了两者最常用的功能。

Web 服务

.NET 框架为 XML Web 服务提供了深层支持。.NET 小型框架的功能是 .NET 框架所提供功能的子集。最重要的是,使用 Visual Studio .NET 和 SDE 可以创建应用程序,允许您从通过 Visual Basic .NET 构建的应用程序使用 XML Web 服务。

注意:面向 .NET 框架的 Visual Basic .NET 允许您创建 Web 服务客户端和服务器,而 .NET 小型框架的限制是只能使用 XML Web 服务。

Visual Basic 支持

Visual Basic .NET 充分利用了 Visual Basic Helper 库中的 Helper 函数。.NET 小型框架中包含的 Visual Basic Helper 库还提供了这些函数的子集。Visual Basic 开发人员认为 Visual Basic Helper 库中的函数是该语言的核心部分,实际上,这些函数是由许多您熟悉的关键字组成的。

将 Visual Basic Helper 库包含进来,意味着 eMbedded Visual Basic 开发人员可以使用很多在 Visual Basic .NET 中经常用到的语句和函数。

注意:.NET 小型框架中包含的 Visual Basic Helper 库是 Visual Basic .NET 所包含库的一个子集。请参阅 Smart Device Extensions 附带的帮助文档以确认是否支持特定的函数。

GDI 支持

.NET 小型框架支持基本的 GDI 绘图元素,包括位图、笔刷、字体、图标和画笔。这一功能的加入使 Visual Basic .NET 比 eMbedded Visual Basic 更具有优势(eMbedded Visual Basic 中的绘图功能很有限,并且很麻烦)。

基类

.NET 小型框架提供了大量基类,这些类为在 Visual Basic .NET 中工作的开发人员提供了大量功能。这些基类使您可以编写丰富的、基于 .NET 的应用程序。这些应用程序融合了多线程操作、利用网络资源和处理文件等功能。

.NET 小型框架中不包括的功能

为了控制 .NET 小型框架的大小,.NET 小型框架不支持以下 .NET 框架功能。

  • 打印:与 eMbedded Visual Basic 相同,.NET 小型框架将不支持打印机管理和打印 API。
  • MDI 窗体:Windows CE 不支持多文档界面 (MDI),因而 .NET 小型框架不包含此功能。
  • GDI+:Windows CE 不支持 GDI+,因而 .NET 小型框架不包含此功能。
  • 拖放功能:Windows CE 不支持 OLE 拖放功能,因而 .NET 小型框架不包含此功能。
  • 二进制序列化:.NET 小型框架不支持二进制序列化。

开发环境

Smart Device Extensions for Visual Studio .NET 是一个 Visual Studio 集成包(也称为 VSIP),内置于 Visual Studio .NET 中。作为 VSIP,SDE 利用了 Visual Studio .NET 提供的集成开发环境(也称为 IDE)。IDE 提供了旧版本的 Windows CE 开发工具无法比拟的开发体验。

本节介绍 Visual Studio .NET IDE 中用于创建 Window CE 应用程序的主要组件。

创建新工程

第一次运行 Visual Studio .NET 时,将显示“Start Page”(如图 1 所示)。“Start Page”用于打开现有工程和创建新工程,包括针对 .NET 小型框架的工程。

图 1:Visual Studio .NET Start Page

单击“New Project”按钮显示“New Project”对话框(如图 2 所示)。可以从该对话框中选择模板来创建您的应用程序。Smart Device Extensions 在 Visual Basic 和 Visual C# 的工程文件夹中都安装了一套模板。

SDE 在 Visual Basic Projects 文件夹中安装了四个模板。“Pocket PC Application”模板提供了创建 Pocket PC 应用程序所需的基本工程配置。此工程模板突出显示在图 2 中。

图 2 显示了另外两个与 Pocket PC 相关的模板。“Pocket PC Class Library”模板用于构造类库。“Pocket PC Control Library”模板用于创建控件。

注意:增加控件和类库是 Visual Basic .NET 相对于 eMbedded Visual Basic 的一项重大改进,eMbedded Visual Basic 不支持这两项功能。

图 2:显示三个 Pocket PC 相关模板的“New Project”对话框

SDE 包含的第四个模板是“Windows CE Application”模板(如图 3 所示)。此模板允许您构建面向运行(支持 .NET 小型框架的)Windows CE 的任何设备的 .NET 小型框架工程。

图 3:显示“Device Project”向导的“New Project”对话框

Pocket PC 工程模板与所有设备模板一样,为选定的工程类型创建相应的初始文件、引用、代码框架、属性设置和任务。设备模板充分考虑到了目标平台,而目标平台反过来会影响开发人员能够使用的 .NET 小型框架库。

构造用户界面

如果您曾使用过 Visual Studio .NET,则只需少量指导便可以开始使用 Smart Device Extensions。对于刚开始接触 .NET 的 eMbedded Visual Basic 开发人员,以下章节将引导您逐步了解 Visual Studio .NET IDE 的主要功能。

在创建新工程时,“Start Page”将由空白窗体代替(如图 4 所示)。

图 4:Windows 窗体设计器

第一眼看上去,Visual Studio .NET IDE 的这一部分与 eMbedded Visual Basic 中的窗体设计器很相似。仔细观察一下,您会注意到此窗口的顶部有一组选项卡。在上图中,显示了三个选项卡:“Start Page”、“Form1.vb”和“Form1.vb [Design]”。

我们已经了解了“Start Page”,但另外两个“Form1.vb”选项卡是干什么的呢?这两个选项卡将 eMbedded Visual Basic 窗体界面和 eMbedded Visual Basic 中的窗体代码模块关联起来。Visual Studio .NET IDE 允许您使用这些选项卡方便地在用户界面设计和代码窗口中切换。

新工具箱

Visual Studio .NET IDE 中工具箱的位置与 eMbedded Visual Basic 中工具箱的位置相同,但最初设为隐藏状态。Visual Studio .NET IDE 支持面板在不使用时自动隐藏。在设计窗体和编写代码时,该功能可提供更多的可用屏幕空间。

在隐藏状态下,工具箱(如图 5 所示)与 IDE 左侧对齐。将鼠标移动到“Toolbox”选项卡上,其显示状态将改变(如图 6 所示)。

图 5:隐藏状态下的 Visual Studio .NET 工具箱

图 6:可视状态下的 Visual Studio .NET 工具箱

Smart Device Extensions 提供的控件

eMbedded Visual Basic 提供的控件很有限,而 Smart Device Extensions 包含了非常丰富的控件,其中很多控件都支持数据绑定。表 1 显示了控件列表。

ButtonCheckBoxColorDialogComboBoxContextMenu
DateTimePickerDomainUpDownErrorProviderGroupBoxHScrollBar
ImageListLabelLinkLabelListBoxListView
MainMenuMonthCalendarNumericUpDownOpenFileDialogPanel
PictureBoxProgressBarRadioButtonSaveFileDialogStatusBar
TabControlTextBoxTimerToolBarToolTip
TrackBarTreeViewVScrollBar  

表 1:Smart Device Extensions 包含的控件

向窗体中添加控件

Visual Studio .NET 工具箱的使用方法与 eMbedded Visual Basic 中的相同。只需在工具箱中选择控件,然后将其拖放到您的窗体中即可。在图 7 中,窗体上已经添加了一个按钮。Visual Studio .NET 在其“Format”菜单下提供了一整套用户界面配置工具,包括对齐、尺寸、间距、居中和锁定位置。

图 7:向窗体中添加按钮

管理工程

使用“Solutions Explorer”窗口来管理 .NET 小型框架工程。“Solutions Explorer”窗口在功能上类似于 eMbedded Visual Basic 中的“Project Explorer”窗口(如图 8 所示),用于访问和配置工程及其组件。

图 8:Visual Studio .NET“Solution Explorer”窗口

工程项

eMbedded Visual Basic 所支持的工程项少得令人难以置信 - 只有窗体和标准模块。而 Smart Device Extensions for Visual Studio .NET 提供了大量的工程项供您选择。表 2 详细说明了所支持的项、对应的文件扩展名以及简要说明。

工程项文件扩展名说明
程序集信息文件.vb用于存储程序集信息(例如版本控制和程序集名称)的文件。
程序集资源文件.resxLocalized 属性设为 TRUE 时,该文件包含工程的本地化信息。
位图.bmp空白位图图像文件,可用于创建简单的图像。
.vb代码文件,开始时包含一个简单的空类声明。
代码文件.vb空的 Visual Basic 或 Visual C# 代码文件,不包含任何代码。
组件类.vb具有可视设计器的类(业务对象)。
光标文件.vb创建自定义光标的图像文件。
自定义控件.vb非可视化设计的 Windows 控件(即没有图形设计界面)。必须通过编写代码来创建该控件。
数据表单.vb数据表单,用于辅助创建数据连接。
数据集.xsdXSD 架构,为数据集(用于以编程方式访问数据)生成类。
动态发现文档.vsdisco有时称为 disco 文件,为枚举所有 Web 服务和 Web 工程中的所有架构提供了一种方法。
图标文件.vb创建自定义图标的图像文件。
继承的窗体.vb通过可视继承方法从另一个窗体中派生的 Windows 窗体。从另一个窗体中继承时,将把该窗体作为初始窗体。然后,您可以可视地添加或改变其内容。
继承的用户控件.vb类似于用户控件,只不过它是从另一个现有用户控件派生而来的。
模块(仅 Visual Basic).vb代码文件,开始时包含一个用于存储函数的文件。
静态发现文件.disco用于发布有关 Web 服务的信息。
文本文件.txt空文本文件。
用户控件.vb可以放在 Windows 窗体上的控件(可视元素)。具有一个可视设计器。
Windows 窗体.vb基本 Windows 窗体,可用于本地应用程序。具有一个图形化设计表面。
XML 文件.xmlXML 文档文件。
XML 架构.xsd不含有生成的类的 XSD 架构文件。

表 2:Smart Device Extensions 提供的支持文件类型

配置属性

Visual Studio .NET“Properties”窗口允许您配置窗体和控件的属性。如图 9 所示,“Properties”窗口提供了按分类排序和按字母排序的视图。分类视图可以折叠或展开,以方便地处理特定的属性集。

图 9:Visual Studio .NET“Properties”窗口

注意:与 eMbedded Visual Basic 的相应控件相比,Visual Basic .NET 中控件的某些属性名发生了一些变化。例如,Visual Basic .NET 按钮提供 Text 属性,代替了原来的 Caption 属性。

添加代码

如图 10 所示,Visual Studio .NET 代码窗口与 eMbedded Visual Basic 版本相似。主编辑区域包含了新增的功能(可以折叠和展开代码部分)。此窗口左上部的组合框用于选择类,而 eMbedded Visual Basic 中的这个区域则用于选择对象;代码窗口右上部的组合框用于选择方法,而 eMbedded Visual Basic 中的这个区域则用于选择过程。Visual Studio .NET 代码窗口支持自动完成语句,包括自动列出成员和提供参数信息。

图 10:演示了 Microsoft® IntelliSense® 的 Visual Studio .NET 代码窗口

注意:Visual Basic .NET 支持重载方法。对于专门使用 eMbedded Visual Basic 的开发人员,重载是一个新概念。简单地说,重载允许您多次声明一个方法,而每次都可以使用不同的参数列表。在上图中,您可以注意到在方法说明窗口的左下部新增了导航功能。此导航工具可以帮助您选择最能满足开发需要的方法说明。需要注意的是,Visual Basic .NET 要求为方法定义的所有参数提供值。Visual Basic .NET 不支持可选参数。

Visual Basic .NET 窗体背后的代码

使用 Visual Basic .NET 创建窗体时,实际上是创建用于定义窗体界面的代码。这一点不同于 eMbedded Visual Basic。在 eMbedded Visual Basic 中,窗体的定义与窗体的代码是分开说明的。

Windows 窗体设计器自动生成这些代码,并将其添加到窗体的代码模块中,如图 11 所示。开发人员通常看不到这些代码,而只能作为一个区域来引用。此区域具有一个标签,标题为“Windows Form Designer generated code”。

注意:窗体的这一部分是由 Visual Studio .NET 的“Windows Form Designer”组件创建和维护的。不要手动修改这部分代码,否则可能产生无法预测的结果。

图 11:隐藏了所生成代码的代码段

可以单击代码窗口最左侧的加号 (+) 和减号 (-) 符号来展开和折叠区域。展开由 Windows 窗体设计器生成的代码,可以显示用于定义窗体界面的代码,如图 12 所示。

图 12:显示了所生成代码的代码段(请注意窗体和控件的定义)

配置工程

工程属性通过“Property Pages”对话框配置。可通过单击“Project”菜单下的“Properties”访问此对话框,或在“Solution Explorer”中的工程上单击鼠标右键,然后从弹出菜单中选择“Properties”,如图 13 所示。

图 13:访问工程属性

“Property Pages”对话框(如图 14 所示)可用于配置工程的所有内容,包括平台、设备类型和目标输出文件夹等设备部署细节。

图 14:配置工程属性

生成应用程序

要生成应用程序,请从“Build”菜单下单击“Build”。将出现“Output”窗口(如果当前未显示该窗口),如图 15 所示。

图 15:显示工程生成结果的 Visual Studio .NET“Output”窗口

“Output”窗口用于显示部署消息、异常处理和状态通知。部署消息包括设备信息、源文件夹和目标文件夹、文件信息以及内存使用情况。异常处理信息包括连接超时、内存不足、未找到路径、拒绝访问、共享冲突、取消的部署以及其他无法预测的错误。状态信息包括成功、失败以及跳过的项。请参考“Output”窗口寻求解决编译和部署问题的方法。

测试应用程序

与 eMbedded Visual Basic 类似,Smart Device Extensions 允许您在模拟器或在设备上测试应用程序。与 eMbedded Visual Basic IDE 类似,对 Visual Studion .NET IDE 的 SDE 增强提供了一个菜单栏界面(如图 16 所示),允许您选择测试目标。

图 16:选择部署目标

本文总结

诚如您所知,我只是简单设想了一下在 Windows CE 操作系统下基于 Visual Basic 开发的前景。多少年来,我先后尝试过用 Visual Basic for CE 和 eMbedded Visual Basic 完成我想做的工作,而今一个既酷又强大的替代工具马上即将问世了。在不久的将来,就可以找到 SDE 测试版,以便练习 Visual Basic .NET 的使用技巧。您需要通过此方法来完成这种转变。

返回原路

这就是本月的话题。希望您现在明白了我为什么无法独享这一信息。在接下来的几个月内,我希望能够找到更多的文章,并且抛开 SDE 的理论知识,开始介绍使用这个强大的新工具来实际创建应用程序的要点。这个月我会前往洛杉矶,在 PDC 上演讲从 eMbedded Visual Basic 到 SDE 的演变,并到海上进行一些必要的冲浪运动。到时再见吧,现在,我要动身了。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值