科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网›软件频道 ›将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005

将 eMbedded Visual C++ 应用程序迁移到 Visual Studio 2005

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

通过在这一自己控制进度的动手体验中使用 Visual Studio 2005,告别 Microsoft eMbedded Visual C++,并生成基于 Windows Mobile 的本机应用程序。

作者:微软 来源:MSDN 2007年9月1日

关键字: Visual C++ 迁移 Visual Studio

  • 评论
  • 分享微博
  • 分享邮件

体验 1:迁移 eMbedded Visual C++ Windows Mobile Win32 项目

此体验的目标是将一个 Microsoft eMbedded Visual C++ (eVC) Pocket PC 2003 应用程序迁移到 Visual Studio 2005,并为其创建智能设备 CAB 项目。

•

练习 1 – 将 eMbedded Visual C++ Windows Mobile Win32 项目迁移到 Visual Studio 2005

•

练习 2 – 创建智能设备 CAB 项目

练习 1:将 eMbedded Visual C++ Windows Mobile Win32 项目迁移到 Visual Studio 2005

在 Visual Studio 2005 中打开 eMbedded Visual C++ 项目的步骤

1.

在 Visual Studio 2005 中,选择 File | Open | Project/Solution(文件 | 打开 | 项目/解决方案)。

2.

浏览到 C:\HOL\dirtree。

3.

选择 dirtree.vcp,然后单击 Open(打开)。

4.

在 Visual Studio Conversion Wizard(Visual Studio 转换向导)欢迎页面上,单击 Finish(完成),然后单击 Close(关闭)。

5.

在 Solution Explorer(解决方案资源管理器)中,右键单击 DirTree 项目,然后单击 Properties(属性)。

6.

展开 Configuration Properties | Linker | Input(配置属性 | 链接器 | 输入)。

7.

在 Configuration(配置)下拉列表框中,选择 All Configurations(所有配置)。

8.

在 Platform(平台)下拉列表框中,选择 All Platforms(所有平台)。

9.

单击 Ignore Specific Library(忽略特定库)属性中的省略号,如下图所示。


10.

在文本框中,键入 oldnames.lib,然后单击 OK(确定)。

11.

单击 AdditionalDependencies(附加依赖项)属性中的省略号,然后添加以下 .lib 文件:commctrl.lib coredll.lib aygshell.lib secchk.lib ccrtrtti.lib

12.

单击 OK(确定)。

创建方向识别功能的步骤

1.

在 Solution Explorer(解决方案资源管理器)中,展开 DirTree | Resource Files。

2.

双击 treedir.rc 文件。

3.

在 Resource View(资源视图)中,展开 treedir.rc | Dialog。

4.

右键单击 IDD_ABOUT 对话框,然后选择 Copy(复制)。

5.

选择 Dialog 文件夹,然后单击 Paste(粘贴)。

6.

选择 IDD_ABOUT1,然后单击 Properties(属性)选项卡。

7.

在 Properties(属性)窗口,将 ID 值从 IDD_ABOUT1 更改为 IDD_ABOUT_WIDE。

8.

在 Dialog Editor(对话框编辑器)中,调整 IDD_ABOUT_WIDE 的大小,使其约为 215 x 135,如下图所示。(可以在 IDE 的右下角查看对话框的大小。)


9.

将图标移动到文本右侧,如上图所示。

10.

在 resource.h 中,添加下行。

#define IDD_ABOUT_WIDE    200

11.

在 globals.h 中,添加下行。

#include <DeviceResolutionAware.h>

12.

在 wndproc.cpp 中,导航至 void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify) 并将以下内容:

DialogBox(g_hInstance, MAKEINTRESOURCE(IDD_ABOUT), 
          hwnd, (DLGPROC)AboutDlgProc);

替换为:

DialogBox(g_hInstance, DRA::GetDisplayMode() != DRA::Portrait ?
          MAKEINTRESOURCE(IDD_ABOUT_WIDE) :MAKEINTRESOURCE(IDD_ABOUT), 
          hwnd, (DLGPROC)AboutDlgProc);

13.

导航至 LRESULT CALLBACK AboutDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) 并添加以下 CASE 语句。

case WM_SIZE:
DRA::RelayoutDialog(
g_hInstance, 
hwnd, 
DRA::GetDisplayMode() != DRA::Portrait ?MAKEINTRESOURCE(IDD_ABOUT_WIDE) :MAKEINTRESOURCE(IDD_ABOUT));
return (TRUE);
}

14.

现在,LRESULT CALLBACK AboutDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) 应为如下所示:

LRESULT CALLBACK AboutDlgProc(HWND hwnd, UINT uMsg, WPARAM wParam,
LPARAM lParam)
{
SHINITDLGINFO shidi;

switch(uMsg)
  {
case WM_INITDIALOG:
//在 Pocket PC 设备上以常规方式创建所有对话框,使其成为    //上端带有
// OK(确定)按钮的全屏对话框。 
// 创建一个 Done(完成)按钮并设定其大小。
shidi.dwMask = SHIDIM_FLAGS;
shidi.dwFlags = SHIDIF_DONEBUTTON | SHIDIF_SIPDOWN | SHIDIF_SIZEDLGFULLSCREEN;
shidi.hDlg = hwnd;
//初始化基于 dwFlags 参数的对话框
SHInitDialog(&shidi);
// 如果将重点设置在对话框的第一个空间上,应返回非零值,
// 否则,如果此例程手动设置重点,则返回零。
return (TRUE);
    
case WM_COMMAND:
switch (LOWORD(wParam))
    {
case IDOK:
EndDialog(hwnd, 0);
break;
case IDCANCEL:
EndDialog(hwnd, 0);
break;
    }
return (TRUE);
case WM_SIZE:
DRA::RelayoutDialog
(g_hInstance, 
hwnd, 
DRA::GetDisplayMode() != DRA::Portrait ?MAKEINTRESOURCE(IDD_ABOUT_WIDE) :MAKEINTRESOURCE(IDD_ABOUT));
return (TRUE);
  }
return (FALSE);
}

在 Pocket PC 2003 上运行应用程序的步骤

1.

在 Configuration Manager(配置管理器)中,确保选择了 Pocket PC 2003 (ARMV4),如下图所示。


2.

在 Device Deployment(设备部署)工具栏中,确保选择了 Pocket PC 2003 SE Emulator(Pocket PC 2003 SE 仿真器),如下图所示。


3.

按 F5。

重要信息:如果在部署过程中收到错误,指出正在使用该进程或文件,这意味着程序仍在仿真器上运行着,必须先退出程序,然后才能部署和运行新的副本。在部署仿真器的体验中,随时都可能出现此错误。有关退出正在运行的应用程序的说明,请参见此体验的附录。

4.

在仿真器中启动应用程序之后,在应用程序中选择 Help | About(帮助 | 关于),如下图所示。


5.

通过按 Calendar(日历)按钮(功能键 2),旋转仿真器,如下图所示。


6.

监视横向形式的 About(关于)框加载完成。

7.

单击 Debug(调试),然后单击 StopDebugging(停止调试)以终止应用程序。

在 Windows Mobile 5.0 Pocket PC 上运行应用程序的步骤

1.

在 Configuration Manager(配置管理器)中,确保选择了 Windows Mobile 5.0 Pocket PC SDK (ARMV4I)。

2.

在 Device Deployment(设备部署)工具栏中,确保选择了 Windows Mobile 5.0 Pocket PC Emulator(Windows Mobile 5.0 Pocket PC 仿真器)。

3.

按 F5。

4.

在仿真器中启动应用程序之后,在应用程序中选择 Help | About(帮助 | 关于)。

5.

通过按 Calendar(日历)按钮,旋转仿真器。


监视横向形式的 About(关于)框加载完成。

练习 2:创建智能设备 CAB 项目

创建智能设备 CAB 项目的步骤

1.

在 Solution Explorer(解决方案资源管理器)中,右键单击解决方案,然后选择 Add | New Project(添加 | 新建项目)。

2.

展开 Other Project Types | Setup and Deployment(其他项目类型 | 安装和部署)。

3.

选择 Smart Device CAB Project(智能设备 CAB 项目),并在 Name(名称)文本框中输入 DirTreeSetup,然后单击 OK(确定)。

4.

在 Solution Explorer(解决方案资源管理器)中,右键单击新创建的 DirTreeSetup 项目,然后选择 View | File System(视图 | 文件系统)。

5.

在 FileSystem(文件系统)窗口中,右键单击 ProgramFiles 文件夹,然后选择 Add | Folder(添加 | 文件夹)。

6.

将新添加的文件夹命名为 DirTree。

7.

右键单击 DirTree 文件夹,然后选择 Add | Project Output(添加 | 项目输出)。

8.

在 Project(项目)下拉列表框中,确保选择了 DirTree,然后单击 PrimaryOutput(主输出)。

9.

在 Configuration(配置)下拉列表框中,确保选择了 (Active)([活动])。如果您在先前的任务中生成了 DirTree 项目的发行版本,则可以在此 Configuration(配置)下拉列表框中选择 Release(发行)。

10.

单击 OK(确定)。

11.

在 Solution Explorer(解决方案资源管理器)中,右键单击 DirTreeSetup 项目,然后选择 Build(生成)。

12.

可以在 My Documents\Visual Studio 2005\Projects\DirTree\DirTreeSetup\<config>(其中“<config>”为 Release [发行] 或 Debug [调试])中找到 DirTreeSetup.cab 文件。

 

体验 1 总结

在此体验中,您执行了以下练习:

•

练习 1 – 将 eMbedded Visual C++ Windows Mobile Win32 项目迁移到 Visual Studio 2005

•

练习 2 – 创建智能设备 CAB 项目

在此体验中,您将一个 eMbedded Visual C++ Pocket PC 2003 应用程序迁移到了 Visual Studio 2005,对其进行了编译,并在 Pocket PC 2003 和 Microsoft Windows Mobile 5.0 Pocket PC 上运行了该应用程序。同时,通过在应用程序处于横向模式时使 About(关于)框以“加宽”形式加载,还向应用程序添加了方向识别功能。

 

体验 2:迁移 eMbedded Visual C++ MFC Windows Mobile 应用程序

注意:许多典型问题应已涵盖在“What's New in Visual Studio 2005 for Native Developers”和“将 Microsoft eMbedded Visual C++ 项目迁移到 Visual Studio 2005”这两本白皮书中。如果用户按 CTRL + 空格键获得 IntelliSense 以完成一行代码,则 IDE 可能会冻结。出现这种情况时,只需告诉用户这是一个已知的错误,不要按 CTRL + 空格键。

此体验的目标是将一个 Microsoft eMbedded Visual C++ MFC Pocket PC 2003 应用程序迁移到 Visual Studio 2005,并为其创建智能设备 CAB 项目。

•

练习 1 – 迁移基于 Windows Mobile 的 eMbedded Visual C++ MFC 应用程序

•

练习 2 – 创建智能设备 CAB 项目

练习 1:迁移基于 Windows Mobile 的 eMbedded Visual C++ MFC 应用程序

在 Visual Studio 2005 中打开 eMbedded Visual C++ 项目的步骤

1.

在 Visual Studio 2005 中,选择 File | Open | Project/Solution(文件 | 打开 | 项目/解决方案)。

2.

浏览到 C:\HOL\chkbook。

3.

选择 chkbook.vcp,然后单击 Open(打开)。

4.

单击 Finish(完成),然后单击 Close(关闭)。

迁移代码的步骤(第 I 部分)

1.

在 checkdlg.cpp 中,将三次出现的 _tcslen 全部替换为 ::wcslen。

需要执行此操作以区分平台 API 和 MFC API。

2.

在 chkbkdoc.cpp 中,由于 MFC 8.0 for Devices 中不支持 Dump(转储),所以需要注释以下代码。

Void CCheckBookDoc::Dump(CDumpContext& dc) const
{
CDocument::Dump(dc);
}

3.

在 chkbkdoc.h 中,注释以下代码。

virtual void Dump(CDumpContext& dc) const;

4.

在 chkbkedt.cpp 中,将以下代码:

static bSetTabStops = FALSE;

更改为:

static BOOL bSetTabStops = FALSE;

由于 Visual Studio 2005 设备编译器具有更加紧密的一致性特征(相对 eMbedded Visual C++ 编译器而言),因此需要这样做。

5.

在 chkbkvw.cpp 中,注释以下代码。

void CCheckBookView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}

另外还要注释以下代码。

  m_dlg.m_bFullScreen=FALSE;
m_dlg.m_bFullScreen is always set to True for Windows Mobile platforms (set in dlgcore.cpp)

6.

在 chkbkvw.h 中,注释以下代码。

virtual void Dump(CDumpContext& dc) const;

迁移资源的步骤

1.

在 Solution Explorer(解决方案资源管理器)中,右键单击 chkbook.rc 文件,然后选择 ViewCode(查看代码)。

2.

在 Menu 段中,将以下代码:

IDR_MAINFRAME MENU PRELOAD DISCARDABLE 
BEGIN
POPUP "&File"
BEGIN
MENUITEM "&New...\tCtrl+N",    ID_FILE_NEW
MENUITEM "&Open...\tCtrl+O",  ID_FILE_OPEN
MENUITEM SEPARATOR
MENUITEM "E&xit",      ID_APP_EXIT
END
POPUP "&Edit"
BEGIN
MENUITEM "&Commit Check",  ID_EDIT_COMMIT
MENUITEM SEPARATOR
MENUITEM "&New Check",    ID_EDIT_NEW_CHECK
MENUITEM SEPARATOR
MENUITEM "Ne&xt Check",    ID_NEXT_CHECK
MENUITEM "&Prev Check",    ID_PREV_CHECK
END
POPUP "&View"
BEGIN
MENUITEM "&Check",      ID_VIEW_CHECK
MENUITEM "&Book",      ID_VIEW_BOOK
END
POPUP "&Help"
BEGIN
MENUITEM "&About...",    ID_APP_ABOUT
END
END

替换为:

  IDR_MAINFRAME MENU PRELOAD DISCARDABLE 
BEGIN
POPUP "Menu"
BEGIN
POPUP "File"
BEGIN
MENUITEM "New...",        ID_FILE_NEW
MENUITEM "Open...",      ID_FILE_OPEN
MENUITEM SEPARATOR
MENUITEM "Exit",        ID_APP_EXIT
END
POPUP "Edit"
BEGIN
MENUITEM "Commit Check",    ID_EDIT_COMMIT
MENUITEM SEPARATOR
MENUITEM "New Check",      ID_EDIT_NEW_CHECK
MENUITEM SEPARATOR
MENUITEM "Next Check",      ID_NEXT_CHECK
MENUITEM "Prev Check",      ID_PREV_CHECK
END
POPUP "View"
BEGIN
MENUITEM "Check",      ID_VIEW_CHECK
MENUITEM "Book",        ID_VIEW_BOOK
END
POPUP "Help"
BEGIN
MENUITEM "About...",      ID_APP_ABOUT
END
END
END

3.

注释以下代码。

STRINGTABLE DISCARDABLE 
BEGIN
ID_FILE_MRU_FILE1       "Open this document"
ID_FILE_MRU_FILE2       "Open this document"
ID_FILE_MRU_FILE3       "Open this document"
ID_FILE_MRU_FILE4       "Open this document"
ID_FILE_MRU_FILE5       "Open this document"
ID_FILE_MRU_FILE6       "Open this document"
ID_FILE_MRU_FILE7       "Open this document"
ID_FILE_MRU_FILE8       "Open this document"
ID_FILE_MRU_FILE9       "Open this document"
ID_FILE_MRU_FILE10      "Open this document"
ID_FILE_MRU_FILE11      "Open this document"
ID_FILE_MRU_FILE12      "Open this document"
ID_FILE_MRU_FILE13      "Open this document"
ID_FILE_MRU_FILE14      "Open this document"
ID_FILE_MRU_FILE15      "Open this document"
ID_FILE_MRU_FILE16      "Open this document"
END

4.

在 String Table 段中,在最后一个 STRINGTABLE DISCARDABLE 段的末尾添加以下行。

IDS_MENU    "Menu"
IDS_NEW    "New"

将 RCDATA 添加到 RC2 文件的步骤

1.

在 Solution Explorer(解决方案资源管理器)中,右键单击 Resource Files 文件夹,然后单击 Add | Existing Item(添加 | 现有项)。

2.

双击 Chkbook 示例目录中的 Res 目录,然后将 Files of type(文件类型)更改为 All Files (*.*)(所有文件(*.*))。

3.

选择 chkbook.rc2,然后单击 Add(添加)。

4.

在 Solution Explorer(解决方案资源管理器)中,右键单击 chkbook.rc2,然后选择 ViewCode(查看代码)。

5.

在 Add Manually Edited Resources Here(在此处添加手动编辑的资源)区域中,添加以下代码。

IDR_MAINFRAME RCDATA
BEGIN
IDR_MAINFRAME, 
    2,
    
I_IMAGENONE, ID_FILE_NEW, TBSTATE_ENABLED, TBSTYLE_BUTTON | TBSTYLE_AUTOSIZE,
IDS_NEW, 0, NOMENU,

I_IMAGENONE, IDM_MENU, TBSTATE_ENABLED, TBSTYLE_DROPDOWN | TBSTYLE_AUTOSIZE,
IDS_MENU, 0, 0,
END

迁移代码(第 II 部分)

1.

在 resource.h 中,添加以下行。

#define IDS_NEW        70000
define IDS_MENU        70001
#define IDM_MENU        70002

2.

在 chkrec.cpp 中,将三次出现的以下内容:

if (m_file.m_hFile != (UINT)CFile::hFileNull)

全部更改为:

  if (m_file.m_hFile != (HANDLE)CFile::hFileNull)

3.

在 chkrec.h 中,将以下内容:

m_nRecordLength = sizeof(CCheckRecord); if (m_file.m_hFile != -1) m_file.Close();

更改为:

m_nRecordLength = sizeof(CCheckRecord); if (m_file.m_hFile !=  (HANDLE) -1) m_file.Close();

4.

在 mainfrm.cpp 中,做出以下更改:

•

注释以下代码。

void CMainFrame::Dump(CDumpContext& dc) const
{
CFrameWnd::Dump(dc);
}
•

将整个 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 函数替换为以下代码。

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
if (!m_wndCommandBar.Create(this) ||
!m_wndCommandBar.InsertMenuBar(IDR_MAINFRAME) ||
!m_wndCommandBar.AddAdornments(dwAdornmentFlags))
  {
TRACE0("Failed to create CommandBar\n");
return -1;      // 无法创建
  }
m_wndCommandBar.SetBarStyle(m_wndCommandBar.GetBarStyle() | CBRS_SIZE_FIXED);

return 0;
}
•

将以下行添加到 mainfrm.cpp 的顶部。

DWORD dwAdornmentFlags = 0;

5.

在 mainfrm.h 中,做出以下更改:

•

将以下内容:

CCeCommandBar m_wndCommandBar;

更改为:

      CCommandBar m_wndCommandBar;
•

注释以下代码。

  virtual void Dump(CDumpContext& dc) const;

更改项目属性的步骤

1.

在 Solution Explorer(解决方案资源管理器)中,右键单击该项目,然后选择 Properties(属性)。

2.

在 Configuration(配置)下拉列表框中,选择 AllConfigurations(所有配置)。

3.

在 Platform(平台)下拉列表框中,选择 AllPlatforms(所有平台)。


4.

展开 Linker | Advanced | Entry Point(链接器 | 高级 | 入口点)。

5.

将 wWinMainCRTStartup 更改为 WinMainCRTStartup。

6.

展开 C/C++ | Preprocessor(C/C++ | 预处理器)。

7.

在 Platform(平台)下拉列表框中,选择 Multiple Platforms(多个平台)。

8.

在 Multiple Platforms (多个平台)对话框中,清除 Smartphone 2003 (ARMV4) 和 Windows Mobile 5.0 Smartphone SDK (ARMV4I) 复选框。

9.

单击 PreprocessorDefinitions(预处理器定义)属性中的省略号,如下图所示。


10.

将以下条目添加到列表中。

_WIN32_WCE_PSPC

11.

单击 OK(确定),然后单击 Apply(应用)。

在 Pocket PC 2003 上运行应用程序的步骤

•

在 Configuration Manager(配置管理器)中,确保选择了 Pocket PC 2003 (ARMV4)。


•

在 Device Deployment(设备部署)工具栏中,确保选择了 Pocket PC 2003 SE Emulator(Pocket PC 2003 SE 仿真器)。


•

按 F5。

在 Windows Mobile 5.0 Pocket PC 上运行应用程序的步骤

1.

在 Configuration Manager(配置管理器)中,确保选择了 Windows Mobile 5.0 Pocket PC SDK (ARMV4I),如下图所示。


2.

在 DeviceDeployment(设备部署)工具栏中,确保选择了 Windows Mobile 5.0 Pocket PCEmulator(Windows Mobile 5.0 Pocket PC 仿真器),如下图所示。


3.

按 F5。

练习 2:创建智能设备 CAB 项目

创建智能设备 CAB 项目的步骤

1.

在 Solution Explorer(解决方案资源管理器)中,右键单击解决方案,然后选择 Add | New Project(添加 | 新键项目)。

2.

展开 Other Project Types | Setup and Deployment(其他项目类型 | 安装和部署)。

3.

选择 Smart Device CAB Project(智能设备 CAB 项目),然后在 Name(名称)文本框中键入 ChkbookSetup。

4.

在 Solution Explorer(解决方案资源管理器)中,右键单击新创建的 ChkbookSetup 项目,然后选择 View | File System(视图 | 文件系统)。

5.

在 File System(文件系统)窗口中,右键单击 Program Files 文件夹,然后选择 Add | Folder(添加 | 文件夹)。

6.

将新添加的文件夹命名为 Chkbook。

7.

右键单击 Chkbook 文件夹,然后选择 Add | Project Output(添加 | 项目输出)

8.

在 Project(项目)下拉列表框中,确保选择了 Chkbook,然后单击 Primary Output(主输出)。

9.

在 Configuration(配置)下拉列表框中,确保选择了 (Active)([活动])。如果您在先前的任务中生成了 Chkbook 项目的 Release(发行)版本,则可以在此 Configuration(配置)下拉列表框中选择 Release(发行)。

10.

单击 OK(确定)。

11.

在 Solution Explorer(解决方案资源管理器)中,右键单击 ChkbookSetup 项目,然后选择 Build(生成)。

12.

可以在 My Documents\Visual Studio 2005\Projects\Chkbook\ChkbookSetup\<config>(其中“<config>”为 Release [发行] 或 Debug [调试])中找到 ChkbookSetup.cab 文件。

 

附录 A:终止在设备或仿真器上运行的应用程序

此任务说明了如何终止在设备或仿真器上运行的应用程序。如果在没有附加调试器的情况下启动了应用程序,并且需要终止该应用程序以便可以部署新的应用程序副本,则会用到此任务。将通过在 Visual Studio 中使用远程进程查看器这一远程工具来终止应用程序。

需要知道可执行文件的名称才能终止进程。大多数情况下,此名称就是 Visual Studio 项目的名称。如果您不确定可执行文件的名称,则可以在项目属性中查找。

1.

从 Visual Studio 中,选择 Project(项目),然后选择 xxx Properties(xxx 属性),其中 xxx 代表当前项目的名称。

2.

注意 AssemblyName(程序集名称)字段中的值。此值是可执行文件在设备或仿真器上运行时将使用的名称。

3.

关闭 Properties(属性)对话框。

现在,您就可以终止进程了。

4.

从 Start(开始)菜单中,单击 Start > Microsoft Visual Studio 2005 > Visual Studio Remote Tools > Remote Process Viewer(开始 > Microsoft Visual Studio 2005 > Visual Studio 远程工具 > 远程进程查看器)。

5.

收到 Select a Windows CE Device(选择一个 Windows CE 设备)对话框提示后,选择正在运行该应用程序的仿真器或设备(如下图所示),然后单击 OK(确定)。


6.

连接到仿真器或设备之后,在 RemoteProcessViewer(远程进程查看器)的顶部窗格中找到您要终止的应用程序,如下图所示。


可能需要加宽 Process(进程)列(最左边的列)以完全显示出进程名称。

7.

单击进程名称以选择进程。

8.

要终止进程,请从 RemoteProcessViewer(远程进程查看器)菜单中选择 File > Terminate Process(文件 > 终止进程)。

注意:在单击 Terminate Process(终止进程)之前,请确保选择了正确的进程。终止不正确的进程可能会致使设备或仿真器不可用,这样就必须将其复位才能再次使用。

9.

通过在 Remote Process Viewer(远程进程查看器)菜单上选择 Target > Refresh(目标 > 刷新)并再次滚动浏览顶部窗格,来验证进程是否已终止。如果该应用程序名仍然存在,则说明进程未被终止,您需要重复以上步骤。

注意:大多数进程只需执行一次操作即可终止;但是,根据应用程序状态的不同,偶尔会需要执行两次操作才能终止。

 

体验 2 总结

在此体验中,您执行了以下练习:

•

练习 1 – 迁移基于 Windows Mobile 的 eMbedded Visual C++ MFC 应用程序

•

练习 2 – 创建智能设备 CAB 项目

在此体验中,您将一个 eMbedded Visual C++ (eVC) MFC Pocket PC 2003 应用程序迁移到了 Visual Studio 2005。另外,还对应用程序代码进行了更改,将端口从 MFC 3.0 for Devices 改为 MFC 8.0 for Devices。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章