#前言

实在是想吐个槽,最近公司有个活,想要将我们写的web网站套在一个浏览器壳子里面,愣装桌面应用(zhuang b)。然后健哥给我推荐了cef,顺道作者又手贱的去看了cefSharp和Xilium.CefGlue,不得不说了解一下都是不错的开源项目,国内很多小有名气的浏览器(世界之窗,猎豹等)用的都是cef这个框架。

#安装之痛
然后就是安装vs2015,顶着蛋疼的网速下载各种组件,然后编译cef的二进制文件。下载地址cef下载地址。

然后将这个工程用vs2015打开,Debug。不得不说马仔君的运气不错,一次性编译成功。出现了如下的画面。

红圈圈中的标题,就是我接下来的心声。然后就是按照网上的教程各种在MFC,Winforms中加载Cef。几乎看遍了搜索结果前10页所有靠谱点的文章。结果,我还是编译不过去,各种报错,各种蛋疼。

这哪里是错误,更不是errors,都是插在小爷心头的刀尖儿!!!!!

#思考

昨天回家之后也一直在琢磨这个事情,从一个程序员的角度出发应该如何阅读SDK源码,分析代码结构,然后一举攻破这个难题。顺道写几篇点击能上千的博客,岂不是你好我好大家好~

于是乎,顺其自然的马仔君早上6点半就毫无睡意,整理了一下没剩几根的头发,骑上我的小毛驴屁颠屁颠的来了公司,提前了一个小时走进办公室。抽烟的时候我还在琢磨如何将cef中有用的部分,更方便的应用到自己的程序中,直到烟头烫到了手指,一哆嗦的同时我开始思考一个问题。

<font size = 4>我最开始想要的是什么?
是研究开源技术?
是写质量博客?我特么难道不是只想搞个壳子装我已经写好的程序么?

想明白后,我开始各种折磨度娘(没办法,这属于内事,肯定是要拷问度娘的),然后我找到了一个方法。

#最贱蛋的web->桌面应用

问把大象装冰箱里,哦不,把web程序变为桌面应用拢共分几步?

答:三步。

  1. 到hex官网下载一个源文件的压缩包,下载地址为:hex下载地址
  2. 解压后,修改manifest.json文件,将第一句话"first_page": “http://localhost:8080/Wade/app(你自己的网址)”,保存文件
  3. 双击hexclient.exe,然后看结果。
  4. 没了

结果展示:

然后真没了。

#后记

有时候真的在想,是不是想马仔君这样工作了五六年,在不同岗位摸爬滚打了个遍的老菜鸟渐渐的走失了初心。忘记了编程最终的目的是解决实际问题,而不是为了炫技术而开发。

当然,如果后续有时间,我还是会把cef框架研究明白的。毕竟在紧急的时候可以走捷径,但不能为了走捷径就荒废了修路,否则到最后只能无路可走。

与诸君共勉!

马仔君

于2016年5月18日

恨天捶地ing

【吐槽系列】如何用最贱蛋的方式将web程序变为桌面应用相关推荐

  1. laya3d系列——如何用vscode编译laya项目

    laya3d系列--如何用vscode编译laya项目 ---------------------------------------------转载请说明出处,抄袭必举报查封------------ ...

  2. ASP .NET Core Web MVC系列教程:使用ASP .NET Core创建MVC Web应用程序

    本系列教程翻译自微软官方教程,官方教程地址:Get started with ASP.NET Core MVC | Microsoft Docs 本系列教程介绍了构建MVC Web应用程序的基础知识. ...

  3. db2 删除schema中所有表_常用SQL系列之(六):删除方式、数据库、表及索引元信息查询等...

    本系统为@牛旦教育IT课堂在微头条上的内容, 为便于查阅,特辑录于此,都是常用SQL基本用法.. 前两篇连接: (一):SQL点滴(查询篇):数据库基础查询案例实战 (二):SQL点滴(排序篇):数据 ...

  4. 如何用VC++开发读取网卡MAC地址的程序

    如何用VC++开发读取网卡MAC地址的程序 实际的应用系统中,我们往往会需要在程序运行时获取当前机器的网卡的MAC地址,以便作为某种标识之用,如控制程序的合法性等.下文就如何用Microsoft Vi ...

  5. ABAP面试题系列:写一组会出现死锁(Deadlock)的ABAP程序

    我们在计算机操作系统这门专业课上,学过死锁(Deadlock)的概念:两个或两个以上的进程(或线程)在执行过程中,由于竞争资源而造成的一种阻塞的现象,称为死锁.若无外力干预,这些处于死锁状态的进程将永 ...

  6. Vue系列vue-router的参数传递的两种方式(五)

    Vue系列vue-router的参数传递的两种方式 前言 一.编写Profile页面 二.编写App.vue入口 三.路由配置,index.js 四.对比route.params方式传参 五.项目中 ...

  7. [Ruby on Rails系列]3、初试Rails:使用Rails开发第一个Web程序

    本系列前两部分已经介绍了如何配置Ruby on Rails开发环境,现在终于进入正题啦! Part1.开发前的准备 本次的主要任务是开发第一个Rails程序.需要特别指出的是,本次我选用了一个(Paa ...

  8. 创维E900V22C、E900V22D系列-UWE5621DS芯片语音免拆卡刷固件(当贝桌面)《虎年新春开机动画》

    创维E900V22C.E900V22D系列-UWE5621DS芯片语音免拆卡刷固件(当贝桌面)<虎年新春开机动画>  固件说明: 1.创维E900V22C.E900V22D系列-UWE56 ...

  9. 创维E900V22C、E900V22D系列-UWE5621DS芯片语音免拆卡刷固件(当贝桌面)《创维简约开机动画》

    创维E900V22C.E900V22D系列-UWE5621DS芯片语音免拆卡刷固件(当贝桌面)<创维简约开机动画> 固件说明: 1.创维E900V22C.E900V22D系列-UWE562 ...

最新文章

  1. 素数、最大公约数、最下公倍数、质因数分解
  2. linux孤立cpu,Linux 抛弃旧款 CPU,一下子少 50 万行代码
  3. WordNet简介以及一些语言学知识。
  4. 支持Dubbo接口文档生成的工具!
  5. 删除input框type=number时,默认的上下小箭头
  6. Javascript 函数声明和函数表达式的区别
  7. alibaba fastjson
  8. java的课程总结_Java课程总结
  9. kafka发送与接收数据(含奇葩报错解决方案)
  10. [转]SQL2005 关于 [sa] 登录问题
  11. jvm中的新生代Eden和survivor区
  12. 创建简单的静态库和动态库
  13. 信息系统综合知识二 信息化基础知识
  14. android控制灯编程,远程控制智能灯(android)
  15. 服务器显示htx插槽,华硕最新推出一系列服务器及主板解决方案
  16. R语言实现行为特征分析(Behavioral Profile,BP)+层次聚类分析(hierarchical agglomerative cluster analysis,HAC)
  17. Python进行vivo手机评论数据信息情感分析、LDA主题分析
  18. 马德里的Uber司机
  19. 小米5s升级android9,小米5S lineage16 安卓9.0 极致省电 纯净 完美root Xposed 经典版
  20. zblog插件-zblog插件zblog主题必备小插件

热门文章

  1. tlwdr5660间歇性掉线_普联技术 TL-WDR5660路由器如何,大家这么说
  2. 不写一行代码优化《人员行程登记表》,实战解决行政收集信息难问题
  3. 软件工程导论读书心得
  4. matlab中的addpath用法
  5. sql列转行逗号连接_SQL行转列,逗号隔开
  6. CSS基础样式和排版文本段落
  7. 开始学习es(饿死)
  8. ms在计算机是什么作用,请问电脑MS是什么意思?
  9. 八种常见回归算法解析及代码
  10. 2022年省考各省报名考试时间