精华内容
下载资源
问答
  • Windows XP系统中恢复硬件驱动程序 所谓 驱动程序恢复一般是在重新安装 Windows XP系统时或驱动程序意外丢失时重新安装驱动程序操作步骤如下所述 第1步在Windows XP系统桌面上右键单击我电脑图标并选择属性...
  • //在windows系统任务栏的托盘显示图标 //使用vc6.0++ //代码改编自《TCP/IPX协议及网络编程技术》第22章,罗军舟等著,清华大学出版社 // // 托盘指的是windows桌面窗口右下角显示图标的区域 // 管理托盘图标的...

     

    1. //在windows系统任务栏的托盘中显示图标
    2. //使用vc6.0++
    3. //代码改编自《TCP/IPX协议及网络编程技术》第22章,罗军舟等著,清华大学出版社
    4. //
    5. //    托盘指的是windows桌面窗口右下角显示图标的区域
    6. //    管理托盘图标的函数是Shell_NotifyIcon
    7. //    为了简化使用,定义了CyctNotifyIcon类,封装了Shell_NotifyIcon
    8. //    该类用于构建、维护任务栏图标,主要目的是为了用户提供基于任务
    9. //    栏图标的图形化使用界面。
    10. //========================================================
    11. //======yctNotifyIcon.h文件===================
    12. //注意:代码并不完整,只包含必需的代码
    13. class CyctNotifyIcon  
    14. {
    15. private:
    16.  NOTIFYICONDATA m_NotifyIconData;//NOTITYICONDAT结构
    17.     void FillNotifyIconData(UINT uIDResource, const char *chTip);
    18. public:
    19.  CyctNotifyIcon(HWND hWnd, UINT uCallbackMessage);
    20.  virtual ~CyctNotifyIcon();
    21.  void AddIcon(UINT uIDResource, const char *chTip); 
    22.  void ChangeIcon(UINT uIDResource, const char *chTip);
    23.  void DeleteIcon();
    24. };
    25. //========================================================
    26. //======yctNotifyIcon.cpp文件===================
    27. #include "stdafx.h"
    28. #include "yctNotifyIcon.h"
    29. CyctNotifyIcon::CyctNotifyIcon(HWND hWnd, UINT uCallbackMessage)
    30. {
    31. //hWnd: 指定使用任务栏托盘图标的应用程序的窗口句柄
    32. //uCallbackMessage: 指定任务栏托盘图标鼠标事件的用户回调消息;
    33. //   可以参考msdn中的NOTIFYICONDATA结构
    34.  memset(&m_NotifyIconData, 0, sizeof(NOTIFYICONDATA));
    35.  m_NotifyIconData.hWnd = hWnd;
    36.  ASSERT(m_NotifyIconData.hWnd != NULL);
    37.  m_NotifyIconData.uCallbackMessage = uCallbackMessage;
    38. }
    39. CyctNotifyIcon::~CyctNotifyIcon()
    40. {
    41. }
    42.     
    43. void CyctNotifyIcon::FillNotifyIconData(UINT uIDResource, const char *chTip)
    44. {
    45. //填充NOTITYICONDAT结构
    46. //uIDResource:指定图标资源ID
    47. //chTip:指定在托盘图标上显示的ToolTip文本
    48.  HICON hIcon = AfxGetApp()->LoadIcon(uIDResource);
    49.  m_NotifyIconData.cbSize = sizeof(NOTIFYICONDATA);
    50.  m_NotifyIconData.hIcon = hIcon;
    51.  sprintf(m_NotifyIconData.szTip,chTip);
    52.  m_NotifyIconData.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
    53.  m_NotifyIconData.uID = uIDResource;
    54. }
    55. void CyctNotifyIcon::AddIcon(UINT uIDResource, const char *chTip)
    56. {
    57. //添加(在托盘中的)图标和ToolTip文本
    58. //uIDResource:指定图标资源ID
    59. //chTip:指定在图标上显示的ToolTip文本
    60.  FillNotifyIconData(uIDResource, chTip);
    61.  Shell_NotifyIcon(NIM_ADD, &m_NotifyIconData);
    62. }
    63. void CyctNotifyIcon::ChangeIcon(UINT uIDResource, const char *chTip)
    64. {
    65. //改变(在托盘中的)图标和ToolTip文本
    66. //uIDResource:指定图标资源ID
    67. //chTip:指定在图标上显示的ToolTip文本
    68.  FillNotifyIconData(uIDResource, chTip);
    69.  Shell_NotifyIcon(NIM_MODIFY, &m_NotifyIconData);
    70. }
    71. void CyctNotifyIcon::DeleteIcon()
    72. {
    73. //删除任务栏图标
    74.  Shell_NotifyIcon(NIM_DELETE, &m_NotifyIconData);
    75. }

     


    使用示例步骤:

    1)在CMainFrame中定义成员变量及构造函数中初始化:

    1. CyctNotifyIcon* m_pNotifyIcon;
    1. CMainFrame::CMainFrame()
    2. {
    3.  ......
    4.  m_pNotifyIcon = NULL;
    5.  ......
    6. }


    2)自定义YCT_NOTIFY_ICON消息及其响应函数:

    1. #define  YCT_NOTIFY_ICON WM_USER+15 //自定义消息
    2. LRESULT CMainFrame::OnNotifyIcon( WPARAM wParam, LPARAM lParam )
    3. {
    4. //YCT_NOTIFY_ICON消息响应函数
    5. //用于响应任务栏图标的鼠标事件
    6. //wParam:任务栏图标的ID
    7. //lParam:鼠标事件值
    8. //附:此消息的触发来自于CMainFrame::OnCreate中CyctNotifyIcon构造函数的第二个参数的设定
    9.  switch(lParam)
    10.  {
    11.  case WM_RBUTTONUP:
    12.   //做自己想自己的事,如弹出右键菜单
    13.   ......
    14.   break;
    15.  case WM_LBUTTONDBLCLK:
    16.   //做自己想自己的事,如显示主窗口
    17.   ......
    18.   break;
    19.  default:
    20.   ;
    21.  }
    22.  return 0;
    23. }

     

    3)(利用ClassWizard)重载OnCreate函数:

    1. int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
    2. {
    3.  ......
    4.  //显示windows任务栏图标
    5.  if(m_pNotifyIcon == NULL)
    6.  {
    7.   m_pNotifyIcon = new CyctNotifyIcon(this->GetSafeHwnd(),
    8.    YCT_NOTIFY_ICON); 
    9.   m_pNotifyIcon->AddIcon(IDR_MAINFRAME,(char *)YCT_TASKBAR_TOOLTIP_TEXT);
    10.  }
    11.  ......
    12. }

    4)重载OnDestroy函数;目的:删除任务栏图标。

    1. void CMainFrame::OnDestroy() 
    2. {
    3.  CFrameWnd::OnDestroy();
    4.  ......
    5.  //删除windows任务栏图标
    6.  if(m_pNotifyIcon != NULL)
    7.   m_pNotifyIcon->DeleteIcon();
    8. }

    5)在析构函数中释放m_pNotifyIcon:

    1. CMainFrame::~CMainFrame()
    2. {
    3.  ......
    4.  if(m_pNotifyIcon != NULL)
    5.   delete m_pNotifyIcon;
    6.  ......
    7. }

    水平有限,如有错误请指正。

     

    展开全文
  • Win10可以点击任务视图按钮,在最上面就可以创建,(虚拟桌面在Linux操作系统是一个标配,但是在Windows操作系统一直没有此功能,直到Win10才加入这项功能)。 笔记本话四个手指左右滑动触摸板就可以切换,...

    虚拟桌面

    突然翻到以前的一个小软件,这个软件的作用是创建一个虚拟桌面,并切换到他,这还是在Win7时代时候的了,貌似那时候很多人用这种类似的软件在上班时玩游戏,但是在Win10中加入了虚拟桌面,这类软件不知道怎么样了。

    Win10中可以点击任务视图按钮,在最上面就可以创建,(虚拟桌面在Linux操作系统是一个标配,但是在Windows操作系统一直没有此功能,直到Win10才加入这项功能)。
    在这里插入图片描述
    在这里插入图片描述
    笔记本的话四个手指左右滑动触摸板就可以切换,或者Win + Ctrl + → |←切换。

    创建一个虚拟桌面需要CreateDesktop函数,创建出来还需要切换过去,则要使用SwitchDesktop,如果要在虚拟桌面中运行程序,则可以使用CreateProcess,另外创建的新桌面是光秃秃的,并没有桌面图标、桌面壁纸,所以我们要注册一个快捷键,切换过去的时候还要可以切换回来,由于学艺不精,只会点VB,VB注册全局快捷键需要改变默认的窗口过程,然后去判断消息标识是不是WM_HOTKEY,在做相应的判断。

    CreateDesktop函数参数

    HDESK CreateDesktopA(
      LPCSTR                lpszDesktop,
      LPCSTR                lpszDevice,
      DEVMODEA              *pDevmode,
      DWORD                 dwFlags,
      ACCESS_MASK           dwDesiredAccess,
      LPSECURITY_ATTRIBUTES lpsa
    );
    

    lpszDesktops:要创建的桌面的名称。桌面名称不区分大小写,并且不能包含反斜杠字符。

    lpszDevice:保留;必须为NULL。

    pDevmode:保留;必须为NULL。

    dwFlags:此参数可以为零或DF_ALLOWOTHERACCOUNTHOOK,DF_ALLOWOTHERACCOUNTHOOK意思是使在桌面上其他帐户中运行的进程能够在此进程中设置挂钩。

    dwDesiredAccess:桌面的权限。

    lpsa:指向SECURITY_ATTRIBUTES结构的指针,该结构确定返回的句柄是否可以由子进程继承。如果lpsa为NULL,则不能继承该句柄。

    实例

    这部分是创建新的桌面,并将默认的窗口过程改成myWindowProc。

    其中的GetThreadDesktop用来检索分配给指定线程的桌面的句柄,还有RegisterHotKey注册一个快捷键,当快捷键按下时,窗口过程中会收到WM_HOTKEY消息。

    
    Private Sub Form_Load()
    g_hDesktopThreadOld = GetThreadDesktop(App.ThreadID)
    RegisterHotKey Me.hWnd, 1, MOD_CONTROL, Asc("Q")
    RegisterHotKey Me.hWnd, 2, MOD_CONTROL, Asc("W")
    g_hDesktopNameNew = "MyNewDesktop"
    
    g_hDesktopNew = CreateDesktop(g_hDesktopNameNew, vbNullString, ByVal 0&, 0, GENERIC_ALL, ByVal 0&)
    SetThreadDesktop g_hDesktopNew
    lpOldWinProc = SetWindowLong(Me.hWnd, GWL_WNDPROC, AddressOf myWindowProc)
    End Sub
    

    模块中。

    这部分主要的逻辑就是判断热键,如果是Ctrl+W,则通过SwitchDesktop 切换到新的桌面,另外通过CreateProcess在新的桌面中打开一个资源管理器(CreateProcess参数中的STARTUPINFOA结构体lpDesktop属性指定新的桌面名称即可),如果是Ctrl+Q则切换到原来桌面。

    SwitchDesktop只有一个参数,桌面的句柄,这个句柄由CreateDesktop和 OpenDesktop函数返回。

    Public Declare Function GetThreadDesktop Lib "user32" (ByVal dwThread As Long) As Long
    Public Declare Function CreateDesktop Lib "user32" Alias "CreateDesktopA" (ByVal lpszDesktop As String, ByVal lpszDevice As String, pDevmode As Long, ByVal dwFlags As Long, ByVal dwDesiredAccess As Long, lpsa As Long) As Long
    Public Declare Function SwitchDesktop Lib "user32" (ByVal hDesktop As Long) As Long
    Public Declare Function SetThreadDesktop Lib "user32" (ByVal hDesktop As Long) As Long
    Public Declare Function CloseDesktop Lib "user32" (ByVal hDesktop As Long) As Long
    Public Declare Function OpenDesktop Lib "user32" Alias "OpenDesktopA" (ByVal lpszDesktop As String, ByVal dwFlags As Long, ByVal fInherit As Boolean, ByVal dwDesiredAccess As Long) As Long
    Public Declare Function RegisterHotKey Lib "user32" (ByVal hWnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
    Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Public Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As Long, lpThreadAttributes As Long, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long
    Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    
    Public Const CCHDEVICENAME = 32
    Public Const CCHFORMNAME = 32
    
    Public Const MOD_CONTROL = &H2
    Public Const WM_HOTKEY = &H312
    Public Const GWL_WNDPROC = -4
    
    Public Type STARTUPINFO
            cb As Long
            lpReserved As String
            lpDesktop As String
            lpTitle As String
            dwX As Long
            dwY As Long
            dwXSize As Long
            dwYSize As Long
            dwXCountChars As Long
            dwYCountChars As Long
            dwFillAttribute As Long
            dwFlags As Long
            wShowWindow As Integer
            cbReserved2 As Integer
            lpReserved2 As Long
            hStdInput As Long
            hStdOutput As Long
            hStdError As Long
    End Type
    
    Public Type PROCESS_INFORMATION
            hProcess As Long
            hThread As Long
            dwProcessId As Long
            dwThreadId As Long
    End Type
    
    
    Public Type DEVMODE
            dmDeviceName As String * CCHDEVICENAME
            dmSpecVersion As Integer
            dmDriverVersion As Integer
            dmSize As Integer
            dmDriverExtra As Integer
            dmFields As Long
            dmOrientation As Integer
            dmPaperSize As Integer
            dmPaperLength As Integer
            dmPaperWidth As Integer
            dmScale As Integer
            dmCopies As Integer
            dmDefaultSource As Integer
            dmPrintQuality As Integer
            dmColor As Integer
            dmDuplex As Integer
            dmYResolution As Integer
            dmTTOption As Integer
            dmCollate As Integer
            dmFormName As String * CCHFORMNAME
            dmUnusedPadding As Integer
            dmBitsPerPel As Long
            dmPelsWidth As Long
            dmPelsHeight As Long
            dmDisplayFlags As Long
            dmDisplayFrequency As Long
    End Type
    
    Public Type SECURITY_ATTRIBUTES
            nLength As Long
            lpSecurityDescriptor As Long
            bInheritHandle As Long
    End Type
    
    Public Const GENERIC_ALL = &H10000000
    
    Public Const DESKTOP_SWITCHDESKTOP = &H100
    Public Const DESKTOP_CREATEMENU = &H4&
    Public Const DESKTOP_CREATEWINDOW = &H2&
    Public Const DESKTOP_ENUMERATE = &H40&
    Public Const DESKTOP_HOOKCONTROL = &H8&
    Public Const DESKTOP_JOURNALPLAYBACK = &H20&
    Public Const DESKTOP_JOURNALRECORD = &H10&
    Public Const DESKTOP_READOBJECTS = &H1&
    Public Const DESKTOP_WRITEOBJECTS = &H80&
    Public Const DESKTOP_ALL = 511
    Public Const MAXIMUM_ALLOWED = &H2000000
    
    
    Public lpOldWinProc As Long
    Public g_hDesktopThreadOld As Long
    Public g_hDesktopNew As Long, g_hDesktopNameNew As String
    
    
    Function myWindowProc(ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    If uMsg = WM_HOTKEY Then
        If wParam = 2 And g_hDesktopNew <> 0 Then
            SwitchDesktop g_hDesktopNew
            startExplorer ("explorer.exe")
        End If
        If wParam = 1 Then
            SwitchDesktop g_hDesktopThreadOld
        End If
    End If
    myWindowProc = CallWindowProc(lpOldWinProc, hWnd, uMsg, wParam, lParam)
    End Function
    
    Public Sub startExplorer(str As String)
    Dim sui As STARTUPINFO, pi As PROCESS_INFORMATION
    sui.cb = Len(sui)
    sui.lpDesktop = g_hDesktopNameNew
    CreateProcess vbNullString, str, ByVal 0&, ByVal 0&, 1, &H4000000 Or &H800, ByVal 0&, vbNullString, sui, pi
    End Sub
    

    是不是有点意思呢?

    展开全文
  • PAGE PAGE 3 无法启动Windows系统故障分析及解决 无法启动Windows操作系统故障是电脑开机有自检画面但进入Windows启动画面时无法正常启动到Windows桌面的故障 无法启动Windows系统故障分析 Windows操作系统启动...
  • Windows 虚拟桌面用户管理器 v.0.5 ( 需求讨论版 )使用说明: 【功能】 1.快速批量根据命名规则创建用户帐号(用户名前缀 + 编号); 2.导入规范格式CSV文件,自动批量生成用户帐号 3.批量为用户批理创建个人主...
  • 终端服务指的是Windows为了在单个系统中支持多个可交互的用户会话而提供的功能。利用Windows终端服务,一个远程用户可以在另一台机器上建立一个会话,并且登录进去,在该服务器上运行应用程序。服务器把图形用户界面...

    终端服务指的是Windows为了在单个系统中支持多个可交互的用户会话而提供的功能。利用Windows终端服务,一个远程用户可以在另一台机器上建立一个会话,并且登录进去,在该服务器上运行应用程序。服务器把图形用户界面传送到客户机,客户机把用户的输入传回到服务器上。在Windows Server 2008及R2中微软把终端服务的名称做了修改,叫做远程桌面服务(RDS),RDS和终端服务实现的功能是一样的,但是RDS相对终端服务有所增强,比如RDS服务支持用户访问应用程序和虚拟桌面(如下图所示)。RDS最新版本是Windows Server 2008 R2,在Windows Server 2008 R2中部署和配置RDS服务也比之前版本要方便很多。(之前在Windows Server 2008里叫TS WEB ACCESS)

     

    Windows Serve 2008 R2 RDS架构包括以下组件:

    1.远程桌面会话主机(RDSH)服务器/远程虚拟主机(RDVH)服务器

    2.远程桌面许可(RD Licensing)

    3.远程桌面网关(RD Gateway)

    4.远程桌面链接代理(RD Connection Broker)

    5.远程桌面Web访问(RD Web Access)

    上图展示了RDS部署架构,各个组件之间的关系如下:

    1.远程客户端使用RD网关或RD Web Access访问RDSH服务器(终端服务场景)和RDVH服务器(VDI场景)。

    2.RD连接代理将客户端的会话连接到RDSH服务器(终端服务场景)或者将会话连接到RDVH服务器虚拟机(VDI场景)。

    3.所有远程桌面服务器需要通过RD许可服务器的验证。

    Windows Server 2008 RDS提供的RD会话主机服务功能和Windows Server 2003的终端服务(Terminal Services)一样。使用RD连接代理 ,RD会话主机服务提供客户端对应用程序的访问,我们称之为RemoteApp。使用RemoteApp功能可以分发RemoteApp程序链接到Windows客户端,此外,客户端还可以使用RD Web Access访问远程应用程序。

    Windows Server? 2008 R2 RDS旨在为用户加速并扩展应用程序从数据中心到桌面的部署,RDS是高效低成本的架构平台,适合任何类型的企业,尤其是用户设备分布广泛难以集中管理数据和应用程序的情况下,或者用户需要移动办公时,尤其需要对应用程序进行终端化管理来实现灵活的应用程序交付。

    微软虚拟化接入平台到底长什么样呢?

     

    Windows Server 2008 R2 RDS关键特性

    1.逼真的用户体验 最新版本的Windows Server 2008极大改进了用户的体验,带给用户的体验和使用本机资源相差无几。RDS中丰富的远程用户体验包含了多监控支持,支持Windows Media Player重定向,双向音频并提高富媒体流量位图加速。

    2.RD链接代理 为传统的基于会话远程桌面和应用程序(也即Terminal Service)创建统一的管理员体验。

    3.RemoteApp 远程应用程序和本地应用程序使用起来没有差别,在Windows 7当中与新任务栏无缝集成。RemoteApp帮助提高用户体验以及减少培训需求。

    4.RemoteApp 及Desktop Connections 简化访问一组资源,比如访问与Windows无缝运行的RemoteApp和远程桌面。连接设置简单,自动更新连接,这样用户就可以一直访问最新的资源。

    5.App-V for RDS 帮助解决在远程桌面会话主机中应用程序兼容问题并帮助整合RDSH服务器。App-V for RDS支持64位操作系统。

    6.RD Web Access 帮助简化应用程序和桌面的部署,在Windows客户端使用Web页或者SharePoint门户就能访问服务器上的应用程序和桌面。

    7.RD Gateway 帮助实现内部应用程序和数据与防火墙外部的用户连接的安全。提供关键应用程序和数据给移动办公用户,这些用户不需要使用VPN。

    8.RD Easy Print 使用客户端打印驱动(不需要服务器端驱动)实现使用本地或网络打印机快速和可靠的打印。

    Virtual Desktop Infrastructure (VDI) 是一个桌面交付模型,支持客户端桌面工作负载(操作系统、应用程序、用户数据)托管在数据中心的服务器上运行。 用户可以通过支持远程桌面协议(如 RDP)的客户端设备与虚拟桌面进行通信。与远程桌面服务(包含在Windows Server 2008 R2中,即以前为人所熟知的终端服务—Terminal Services)不同,VDI 中的每个用户都可以通过任何经过授权的设备来访问个人桌面,从而大大改善桌面灵活性。IT部门可以利用集中化的部署获得更全面的优势,包括集中化管理桌面工作负载以及更好的业务连续性。

    虚拟桌面架构价值

    集中式桌面管理 使用VDI企业可以用在数据中心服务器上运行的虚拟桌面来替代传统的PC。管理员在几分钟内便可部署好新的桌面,从而为用户提供他们自己的个性化桌面环境,而无需重新进行培训和共享应用程序。此方法有助于降低桌面基础架构的总体拥有成本 (TCO),延长硬件的生命周期,并可帮助公司加快对业务需求的响应速度。

    桌面标准化管理 VDI 非常适合于向那些在分公司、呼叫中心和其他地点工作的固定职能员工提供经济高效的桌面服务。由于所有的虚拟桌面都位于一个中央位置,因此更容易控制对机密数据的访问,并且可以严格控制办公环境的稳定性、标准化。即使桌面环境被破坏,也可以通过虚拟机模板重建功能实现瞬间恢复。轻松实现办公桌面环境和个人桌面环境的彻底分离,确保办公桌面环境的高质量维护。

    桌面备份和灾难恢复 客户能够享受到以前只有服务器应用程序才有的可靠性、数据保护能力和灾难恢复功能。可以利用共享存储器来备份桌面数据。自动故障切换功能可以帮助确保虚拟桌面的高可用性,而整个站点范围的恢复机制可确保在发生计划外停机后能够快速恢复服务。

    随时随地访问办公桌面 通过微软的用户状态虚拟化和应用程序虚拟化可以很轻松的将用户的办公桌面环境中的个性化信息,个人/办公文档,以及办公时所需的各种办公软件/应用系统与用户的账号绑定在一起,并且集中保存。当用户不管是通过互联网还是分公司/办事处临时网络环境中,可以随时随地的访问微软VDI服务器。VDI服务器可以动态为用户创建一个客户端虚拟机,并将用户的个性化信息,使用的办公软件/应用系统覆盖到临时创建的客户端虚拟机上,从而确保使用者永远能够用自己最习惯的使用方式与自己的办公桌面环境进行互动,高效的处理工作。

    严格把控的办公桌面 通过VDI技术将企业中涉及信息安全的应用部署到虚拟机内,然后通过集中的策略配置、各种软硬件安全措施,确保机密信息只停留在虚拟机内部,从而实现机密信息的严格管控目的。当使用者不再需要此环境时,VDI系统还可以实现相应桌面虚拟机的自动销毁工作,彻底保证信息的安全性、合法传输性。

    减少办公环境的宕机时间 通过微软的用户状态虚拟化和应用程序虚拟化可以很轻松的将用户的办公桌面环境中的个性化信息,个人/办公文档,以及办公时所需的各种办公软件/应用系统与用户的账号绑定在一起,并且集中保存。当用户的物理办公桌面环境出现问题时,可以使用VDI技术,用户状态虚拟化和应用程序虚拟化,为用户构建一个与物理办公桌面一摸一样的桌面虚拟机。用户可以继续在虚拟机上用最熟悉的操作方式办公,而为IT维护人员争取充足的维护时间解决物理计算机出现的问题。

    在后来微软推出了Windows Server 2008 R2和Windows 7的SP1以后,多了2个对于微软虚拟化很重要的新功能,那就是hyper-v的动态内存和Remoto FX

    动态内存:设定1台虚拟机的内存最小值和最大值,让虚拟自由的根据资源消耗情况在这个设定的内存值中自动增加或缩减,以达到合理使用内容,或许1台虚拟机感受不出来效果,但假设1台8G的物理机上跑着几个不同角色的虚拟机,相信用这个功能你会觉得效果很棒,因为动态内容让资源消耗较低和较高的机器能根据目前的物理机所剩内存来进行合理索取和释放,不用再关机再重新设定内存大小,这就不影响业务的连续性了。

     

    Remoto FX:其实这个我们可以简单理解为RDP7.1版本。目前XP和VISTA还不能升级到RDP7.1,RDP7.1到底有什么新特性呢?

    Remote FX的RDP 7.1 客户端允许重定向和视频解码功能,任何来自服务器端用来显示的资源都能转移到客户端屏幕上。RemoteFX可以为每个虚拟机提供独立的虚拟GPU,从而可以获得各种各样的图形加速能力,进而执行各种高保真视频、2D、3D图形图像以及富媒体的处理能力。

    如果您想体验Remoto FX的这个功能,那么你需要具备以下几点:

    1.搭建VDI环境

    2.虚拟主机的硬件达到要求

    2.1:intel处理器具备EPT技术;AMD处理器具备NPT技术

    2.2:显存至少1G以上

    这样你才可以完整体验RDP 7.1的效果,Remoto FX在硬件达到要求的情况下可以开启,您就可以在虚拟桌面看高清和玩3D游戏了。

     

     

    微软桌面虚拟化优势

    加强办公桌面的标准化管理,减少出现问题的次数

    降低办公环境的宕机时间,改善服务用户体验

    在IT环境不断提升中确保不兼容程序的继续服务

    严格把关办公应用的使用范围,确保办公信息的安全

    随时随地安全访问办公环境,提高办公效率

    计算资源动态化,让桌面环境管理水平跃上新台阶

    微软个人独享桌面虚拟化特点

    用户将会独享一个VDI系统中的客户端虚拟机

    客户端虚拟机完全模拟传统个人独享台式机/笔记本的使用习惯

    虚拟机中的客户端桌面环境基本OS由虚机模板创建

    应用软件为虚机内手工/自动本地安装

    用户的个人信息保存在虚拟机内部

    用户拥有自己的客户端虚拟机名称

    当承载虚机的宿主服务器宕机,其上的客户端虚机可以快速在其他宿主服务器上进行恢复

    虚拟机出现严重问题使用对应的备份数据进行恢复

    微软共享桌面虚拟化特点

    用户共享VDI系统虚拟机池中的虚拟机实例

    虚拟机实例会根据用户账号自动构建出用户熟悉的使用环境

    虚拟机中的客户端桌面环境基本OS由虚机模板创建

    应用软件通过应用虚拟化根据账号不同智能、动态部署

    用户的个人信息保存在共享文件存储中

    用户访问统一的连接入口,由连接代理智能分配虚拟机实例

    当承载虚机的宿主服务器宕机,其上的客户端虚机可以快速在其他宿主服务器上进行恢复

    虚拟机出现严重问题使用对应的备份数据进行恢复

    桌面虚拟化包含(服务器虚拟化和应用程序虚拟化)

    后面的文章我会逐步给大家描绘出微软桌面虚拟化的全貌与部署情况的!










    本文转自 ZJUNSEN 51CTO博客,原文链接:http://blog.51cto.com/rdsrv/551578,如需转载请自行联系原作者
    展开全文
  • 在触控板向上滑动,即可添加或者删除桌面 2、 你可以在这些桌面来回切换,甚至还可以根据不同桌面设置壁纸,这样可以方便查找 二、无需密码,用Apple Watch解锁Mac 大家都知道苹果生态一直都很强大,所以...

    一、开启Mac的多桌面

    多桌面的功能是Mac开始有,后来Windows跟进的,不得不说这个功能对于管理文件确实很有帮助。

    在触控板中三指向上滑动,即可添加或者删除桌面在这里插入图片描述

    2、 你可以在这些桌面来回切换,甚至还可以根据不同桌面设置壁纸,这样可以方便查找

    二、无需密码,用Apple Watch解锁Mac

    大家都知道苹果的生态一直都很强大,所以如果你拥有一个Apple Watch,可以将它们连接起来。

    1、 确保Mac已开启 Wi-Fi和蓝牙,同时Mac和Apple Watch已使用同一Apple ID登录到 iCloud,并且Apple ID已启用双重认证

    2、 打开Mac的“系统偏好设置”——“安全性与隐私”在这里插入图片描述

    3、 开启“使用您的AppleWatch解锁APP和Mac”或者“允许 Apple Watch 解锁 Mac”。

    当你戴着已解锁的手表并且与 Mac 距离很近时,自动解锁功才能起作用。当然要确保你的Mac是支持自动解锁功能。

    三、查找输入码

    如果你是一个经常使用拼音打字的人,突然有一天想学习五笔打字,这时候“查找输入码”是一个很好用的工具。

    点击工具栏的“输入法”图标,选择“查找输入码”在这里插入图片描述

    2、 在“输入框”输入一个或者多个汉字,下方即会显示每个字对于的拼音、笔画,五笔型以及拆字。
    在这里插入图片描述

    四、清除DNS缓存

    当我们每次访问网页时,DNS就会缓存一些信息,当缓存信息过多时,在访问某些网站时就无法打开,这时候可以尝试清除DNS缓存。

    打开“终端”软件,输入“sudokillall -HUP mDNSResponder; sleep 2”,回车确认

    2、 输入Mac的登入密码(输入是界面不会显示,直接输入即可),回车确认

    3、 “command+Q”退出就可以一、清除DNS缓存

    五、在触控板手写文字

    千万不要以为Mac的触控板只能滑动光标或者进行操作,事实上,他也支持手写。

    1、 打开工具栏的“输入法”图标,点击“打开键盘偏好设置”

    2、 选择添加输入法,点击“简体手写”即可在触控板上手写

    3、 想要退出只需要按Esc键即可

    六、查看电源信息、循环次数

    有些小伙伴发现电源好像不耐用或者刚买回来的二手Mac需要检查设置,就可以用到这个功能。

    点击工具栏上的苹果图标,按下“option”按键(“关于本机”变成“系统信息”)

    2、 点击“系统信息”,选择“电源”选项即可看到自己的Mac的电池状态以及循环次数等信息
    在这里插入图片描述

    七、在邮件软件中添加QQ邮箱账号

    很多小伙伴发现在“互联网账号”中,QQ邮箱不能用自己原有的密码登入,事实上真正的配置方法是这样的。

    1、 用网页版打开QQ邮箱,确认QQ邮箱IMAP/AMTP服务开启(点击邮箱“设置”——“账号”——开启“IMAP/AMTP服务”)

    在弹出的窗口输入拷贝“授权码”

    3、 在Mac的“偏好设置”——“互联网账号”添加QQ邮箱

    4、 将QQ邮箱地址填入,密码填写刚刚拷贝的“授权码”,点击登录就可以添加QQ邮箱

    八、自定义Touch Bar

    Mac的Touch Bar上的快捷按钮并不是固定的,你可以根据自己的需求将常用的按键放进去。

    1、 打开“系统偏好设置”,打开“键盘”,选择“自定义功能栏”

    2、 窗口会显示多个按钮,将你需要的按钮拖拽到Touch Bar就可以,当然你也可以将不常用的直接移除就可以。

    九、“option+字母”快速输入图标

    我们常用的一些图标可以通过“option+字母”进行快速输入,笔者整理了一下这个表格供大家参考。

    十、格式化存储磁盘

    有时候U盘或者移动硬盘存储的东西太多,想要格式化,可以

    打开“磁盘工具”,选择需要格式化的磁盘

    2、 选择“抹掉”按钮,选择抹掉后的格式,一般我们都会选“ExFAT”,因为这个格式在苹果和Windows系统中都支持。

    展开全文
  • 模块3 系统设置 设置个性化桌面 点击显示窗口中的桌面标签如右图所示利用浏览按钮就可以指定计算机中存储的图片或HTML文件作为背景在浏览按钮下方的位置下拉列表中还可以设定墙纸的显示方式平铺选项是将图片重复排列...
  • 第一部分:支撑整个操作系统运行所必须要的文件和文件夹。这些文件夹非常重要,在没有特殊情况时,请不要删除这些文件夹内的任何可用文件 ...可以将文件夹中的鼠标指针删除,对Windows系统默认的鼠标...
  • Linux中的shell,是一个面向...shell在Linux中的存在形式:由于Linux不同于Windows,Linux是内核与界面分离的,它可以脱离图形界面而单独运行,同样也可以在内核的基础上运行图形化的桌面。这样,在Linux系统中,...
  • 桌面操作系统早在.Net和Silverlight 2就使用了独立外存数据存储方式。所谓独立是不同应用程序存储空间彼此隔离。应用程序不能直接调用其他应用程序存储空间。使用独立外存目的是为了保证数据安全,避免...
  • 选择题(错题本): 下拉菜单如果命令后有符号...,表示选择时会弹出对话框 CD—ROM光盘可以保存的数据量是650MB 操作系统与用户之间的接口软件是作业管理 如果一个汉字点阵为24×24,10...Windows的桌面整个
  • 认识Windows教案

    2014-06-19 18:41:01
    1、认识Windows的桌面,了解其功能和特点。  2、能熟练启动、操作和关闭Windows。  3、熟练使用鼠标。  教学任务  1、练习桌面操作。  2、练习使用鼠标。  教学要点  1、Windows的桌面主要由桌面背景、...
  • windows 程序设计

    2011-07-24 21:16:30
    这意味着Windows不使用系统定时器将处理时间分配给系统中运行多个应用程序,程序必须自愿放弃控制以便其它程序运行。在Windows NT和Windows 98中,多任务是优先权式,而且程序自身可分割成近乎同时执行多个...
  • 硬盘文件系统结构

    2012-05-08 07:14:33
    在WIN98的系统中,没有MSDOS.sys文件,系统能够正常启动,但是无法进入桌面;如果没有COMMAND.COM文件,能够正常启动到桌面,但是无法进入DOS字符方式。 BPB参数块:记录着本分区起始扇区、结束扇区、文件存储格式...
  • Windows98 练习题 1. Windows 9895 是一种什么样操作系统(多选) 答 案 A. 多用户 B. 多任务 C. 网络 D. 字符界面 E. 图形界面 F. 多线程 2.... 在 Windows 中桌面CD#4(单选) 答 案 A. 电脑台
  • 结论我想应该是这样的:当出现启动故障时,应尽量用system32中的同名文件替换现系统中的文件,如果实在不行,就用安装盘的文件替换,这样基本可以解决问题。但有几个文件必须用故障机中的同名文件替换。而用...
  • 多选 多选答案 C....图形界面 Windows 98 / 95的基本元素包括 务栏的中间部分显示的是 当任务栏被隐藏时用户可以按 来启动开始菜单答案 在 Windows中桌面CD#切单选答案 电脑台 B.活动窗口 C. 任务栏
  • 在window XP系统桌面上新建文本文档,再打开写上“联通”两个字,...这里指的文本是用于Windows系统中的扩展名为.txt的文件。 基本原因在于: Notepad(记事本)只支持四种格式:ANSI/Unicode/Unicode big endian/UF

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 205
精华内容 82
关键字:

windows系统中的桌面指的是