C++开发—远程控制项目

C++开发—远程控制

  • 一,准备
  • 二,安装版本控制工具
    • 1,安装git
    • 2,安装乌龟git
      • 1,安装乌龟git应用
      • 2,安装乌龟git对应的语言包
    • 3,设置Visual Studio的git插件
    • 4,创建git项目
    • 5,显示git日志
  • 三,项目准备
  • 四,项目设计
    • 1,服务端:
        • 1,服务端工程配置:
        • 2,服务端技术点:
    • 2,客户端技术点

一,准备

  • 1,Windows上安装git,下载地址git for windows
  • 2,安装版本控制工具tortoisegit(乌龟git),企业开发中,版本控制是不可少的,而且是必要的,它让项目管理变得简单
  • 3,这里我会做个远程控制的小项目

二,安装版本控制工具

1,安装git

  • 安装git,可参考网络上的朋友:安装gitforwindows

2,安装乌龟git

1,安装乌龟git应用

  • 1,使用的是2.14.0.0版本,最新的release版本
    C++开发—远程控制项目_第1张图片

  • 2,选择64位系统,运行效率会高一些,这个根据自己的操作系统决定,不过当前用的更多的是64位
    C++开发—远程控制项目_第2张图片

  • 3,language选择简体中文,64位的
    C++开发—远程控制项目_第3张图片

  • 4,git和language都下载完后,先安装git,再安装language语言包,顺序不要反了。
    C++开发—远程控制项目_第4张图片

  • 5,选择一种SSH客户端,这个设置可以在后面的“Network”页面中更改,我们默认即可
    C++开发—远程控制项目_第5张图片

  • 6,安装位置选择,建议不要在C盘中,其他的盘,看自己习惯,点击Browse更改安装路径
    C++开发—远程控制项目_第6张图片

  • 7,然后next或install,到此点击finish:
    C++开发—远程控制项目_第7张图片

  • 6,选择语言,初始的话只有English,可以暂停于此,安装完下面的语言包后,点击refresh,会有中文的选择:
    C++开发—远程控制项目_第8张图片

  • 7,选择git路径,需要先在Windows上安装git:
    C++开发—远程控制项目_第9张图片

  • 8,选好邮箱,剩下的默认就行,直到点击完成时,完成安装:
    C++开发—远程控制项目_第10张图片

2,安装乌龟git对应的语言包

  • 点击完成,完成安装
    C++开发—远程控制项目_第11张图片

3,设置Visual Studio的git插件

  • 1,打开visual studio -> 工具-> 选项 ->源代码管理 -> 插件选择 -> 选择Git
    C++开发—远程控制项目_第12张图片
  • 2,工具栏-右键-选中源码管理,这样在工具栏上就显示了git的相关工具
    C++开发—远程控制项目_第13张图片

4,创建git项目

  • 1,远端这里使用gitee,先在gitee创建个远程仓库,并copy下来仓库地址
    C++开发—远程控制项目_第14张图片

  • 2,在本地找个路径创建相应的项目文件,右键-Git克隆
    C++开发—远程控制项目_第15张图片

  • 3,复制上copy的远端仓库链接,并确认:
    C++开发—远程控制项目_第16张图片

  • 4,然后通过visual studio创建项目,保存并放到,步骤3时,remote_control_project的本地文件夹中。
    C++开发—远程控制项目_第17张图片

  • 5,此时,代码本地和远程仓库代码并不一样,因此需要本地提交代码到远端,选中要提交的代码文件,右键-选中Git提交
    C++开发—远程控制项目_第18张图片

  • 6,设置提交信息
    C++开发—远程控制项目_第19张图片

  • 7,设置忽略项,因为有些内容无修改,并且没有重复利用价值,比如.vs文件可以被忽略,选中.vs文件,右键 -> TortoiseGit -> 添加到忽略列表 -> 选中 .vs,设置忽略选项,并确认。
    C++开发—远程控制项目_第20张图片
    C++开发—远程控制项目_第21张图片

  • 8,建议除跟代码有关的之外,其他的跟项目没关的信息都可忽略,比如生成的文件,.vs文件,当前用户信息文件等。

  • 9,当我们工程中代码有修改时,右键解决方案- Git - 提交新的修改,前面锁变成红色小对勾的文件,表示该文件有修改
    C++开发—远程控制项目_第22张图片

5,显示git日志

  • 1,右键 -> TortoiseGit -> 显示日志,查看修改内容
    C++开发—远程控制项目_第23张图片

三,项目准备

  • 1,立项:
    • 市场调研,技术调研。
  • 2,需求分析:
    • 文件需求:检查文件,打开文件,下载文件,删除文件
    • 观察需求:远程监控
    • 操控需求:鼠标操作,锁机/解锁
  • 3,技术分析:
    • 服务器:网络编程、文件处理、鼠标处理、图像处理
    • 客户端:网络编程、MFC编程、图像处理
  • 4,复盘:
    • 团队协作总结,市场反馈,迭代计划。

四,项目设计

1,服务端:

1,服务端工程配置:

  • 1,右键服务端工程 -> 属性 ->在链接器里面的,入口点添加mainCRTStartup程序开始执行的位置。
    入口函数有四种组合(子系统+入口函数)
    (宏定义方式):
#pragma comment(linker, "/subsystem:windows /entry:WinMainCRTStartup")//窗口
#pragma comment(linker, "/subsystem:windows /entry:mainCRTStartup")//窗口 直接main函数
#pragma comment(linker, "/subsystem:console /entry:mainCRTStartup")//控制台 直接main函数
#pragma comment(linker, "/subsystem:console /entry:WinMainCRTStartup")//控制台 带窗口
  • (工程配置方式)
    C++开发—远程控制项目_第24张图片
  • 2,在子系统选中Windows窗口,改为之后点击 应用,这样服务端重新编译生成完后,不会到命令窗口了。
    C++开发—远程控制项目_第25张图片

2,服务端技术点:

  • 网络编程
    • 封装网络库,单例模式
    • socket(init,bind,listen,recv,send)
  • 磁盘分区
#include 
  • 命令设计
  • 驱动信息
  • 目录信息
  • 屏幕图像
  • 鼠标处理
  • 打开文件
  • 下载文件
  • 锁机
  • 解锁
  • 显示文字
  • 删除文件

2,客户端技术点

你可能感兴趣的:(C++之路,c++)