ChromiumFX
序言
开发C#桌面应用程序有很多选择,比如WinForm或WPF。
这里我们用ChromiumFX。
目录
一、准备工作
1.1 ChromiumFX
官方网站:https://bitbucket.org/chromiumfx/chromiumfx
下载地址:https://bitbucket.org/chromiumfx/chromiumfx/downloads/?tab=tags
注意:一定要记得ChromiumFx的版本号,在下载CEF的时候要确保版本号一致。比如我们下载的版本号是:3.2924.1569
1、用VS打开ChromiumFX项目,我用的是VS2017。

2、将项目的配置成Release,生成平台选择x86或x64按照自己的需求。

3、按顺序生成libcfx、ChromiumFX、ChromiumWebBrowser项目 4、进入项目文件夹,Build>Release。将libcfx.dll、ChromiumFX.dll、ChromiumWebBrowser.dll三个文件复制出来单独保存。

5、本章完结。
1.2 CEF
官方网站:https://bitbucket.org/chromiumembedded/cef/
下载地址:http://opensource.spotify.com/cefbuilds/index.html(貌似国内打不开,请自行vpn)
注意:请按照ChromiumFx的版本号,下载CEF。比如我们下载的版本号是:3.2924.1569
1、选择win32或win64版本。我们这里选择win32版本。cef更新比较快,想看旧版本号点击Show more builds。

2、找到与ChromiumFX对应的版本号,并下载Sample Application。这是官方的示例。

3、解压文件后,进入解压目录Release,复制所有文件出来单独存放。

4、本章完结。
二、开始安装(nginx篇)
2.1 解压pcre
[官方网站] http://www.pcre.org/
命令流程:
# cd /source/
# wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz
# tar -zxvf pcre-8.38.tar.gz
说明:不需要编译,只需要解压就行。
2.2 解压zlib
[官方网站] http://zlib.net/
命令流程:
# cd /source/
# wget http://zlib.net/zlib-1.2.8.tar.gz
# tar -zxvf zlib-1.2.8.tar.gz
说明:不需要编译,只需要解压就行。
2.3 安装nginx
[官方网站] http://nginx.org/
命令流程:
# cd /source/
# wget http://nginx.org/download/nginx-1.8.0.tar.gz
# tar -zxvf nginx-1.8..tar.gz
# cd nginx-1.8.
# ./configure --prefix=/lnmp/nginx --with-pcre=/source/pcre-8.38 --with-zlib=/source/zlib-1.2.8
# make
# make install
--with-pcre:用来设置pcre的源码目录。
--with-zlib:用来设置zlib的源码目录。
因为编译nginx需要用到这两个库的源码。
小章总结:
此处告一段落,nginx安装完成。我们可以先满足下自己的欲望心。打开nginx服务看看Hello World吧。
启动nginx
# /lnmp/nginx/sbin/nginx
启动后可以再浏览器中打开页面,会显示nginx默认页面。
三、开始安装(php篇)
3.1 安装libxml2
[官方网站] http://xmlsoft.org/
命令流程:
# cd /source/
# wget ftp://xmlsoft.org/libxml2/libxml2-2.9.3.tar.gz
# tar -zxvf libxml2-2.9..tar.gz
# cd libxml2-2.9.
# ./configure \
# --prefix=/package/libxml2 --with-python=no
# make
# make install
这里--with-python=no是
3.2 安装php
[官方网站] http://php.net/
命令流程:
# cd /source/
# wget http://cn2.php.net/distributions/php-7.0.2.tar.gz
# tar -zxvf php-7.0..tar.gz
# cd php-7.0. # ./configure \
# --prefix=/lnmp/php \
# --with-libxml-dir=/package/libxml2 \ //打开libxml2库的支持
# --with-config-file-path=/lnmp/php/etc \ //配置文件所在目录
# --enable-mbstring \ //支持mbstring库
# --enable-fpm \ //支持php-fpm(推荐打开)
# --with-mysqli //打开mysqli模块 # make
# make install
四、开始安装(mysql篇)
4.1 安装cmake
[官方网站] https://cmake.org/
命令流程:
# wget https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz
# tar -zxvf cmake-3.4.1.tar.gz
# cd cmake-3.4.1
# ./configure --prefix=/package/cmake
# make
# make install
# export PATH=/package/cmake/bin:$PATH //设置环境变量。可忽略,只是为了你以后使用cmake方便点。
4.2 安装ncurses
[官方网站] http://ftp.gnu.org/gnu/ncurses/
命令流程:
# wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz
# tar -zxvf ncurses-6.0.tar.gz
# cd ncurses-6.0
# ./configure --prefix=/package/ncurese
# make
# make install
4.3 安装mysql
[官方网站] http://www.mysql.com/
命令流程:
不带boost安装方式
// 这个是不带boost版本的mysql源码。你可以使用以下的参数在编译过程中自动下载boost
// -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost # wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.10.tar.gz
# tar -zxvf mysql-5.7..tar.gz
# cd mysql-5.7.
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
# -DDOWNLOAD_BOOST= -DWITH_BOOST=/package/boost \ //设置自动下载boost库,并放到-DWITH_BOOST指定的路径里。
# -DCURSES_LIBRARY=/package/ncurses/lib/libncurses.a \ //ncurses库libncurses.a
# -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses库头文件
# make # make install
自带boost安装方式
# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.10.tar.gz
# tar -zxvf mysql-boost-5.7..tar.gz
# cd mysql-5.7.
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
# -DWITH_BOOST=/boost/boost_1_59_0 //boost库的路径
# -DCURSES_LIBRARY=/package/ncurese/lib/libncurses.a \ //ncurses库libncurses.a
# -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses库头文件
# make
# make install
说明:mysql从5.7版本后就需要boost库的支持了。并且非常恶心的是mysql需要指定的boost版本号,高了或低了都有可能导致编译不通过。
到此,使用CentOS7上常用的、全新的Web模块基本已经完成了,剩下的就是对这些软件进行配置咯。哈哈,其实代码多,但是了解后真的挺简单,就那几个命令。怎么样?是不是蛮简单的。
ChromiumFX的更多相关文章
- chromiumFx编译使用
CEF chormeFx 为针对.Net的CEF框架,下载链接为: https://bitbucket.org/chromiumfx/chromiumfx 点击Download可以下载chromium ...
- ChromiumFX中js调用C#方法
server端代码: ChromiumWebBrowser wb; wb.AddGlobalJSFunction("CfxHelloWorld").Execute += CfxHe ...
- C#使用NanUI或ChromiumFx碰到的坑(一)
最近在花时间封装一个Razor模板+NanUI的Winform组件,发现了有个神奇地方,,由于需要使用CfxResourceHandler,用于把对cshtml文件的请求,编译成html并返回给CEF ...
- 使用C#在CEF中拦截并响应请求
一.前言 忙里偷闲,研究了一下如何在CEF中拦截请求,并作出响应.这个功能对某些需要修改服务器响应的需求来说必不可少,可以直接读取本地文件作为响应内容. C#的CEF封装项目有很多,我使用的是Chro ...
- 如何在Windows上从源码编译Chromium (CEF3) 加入mp3支持
一.什么是CEF CEF即Chromium Embeded Framework,由谷歌的开源浏览器项目Chromium扩展而来,可方便地嵌入其它程序中以得到浏览器功能. CEF包括CEF1和CEF3两 ...
- CEF中select选项错位的解决方法
使用cef加载页面,移动窗口后选项的位置并不会变化,仍保持上次打开的位置. 经过google查找到这是一个已经解决了的问题:https://bitbucket.org/chromiumembedded ...
- NanUI for Winform发布,让Winform界面设计拥有无限可能
如今,尽管WPF.UWP大行其道,大有把Winform打残干废的趋势.但是还是有那么一波顽固不化的老家伙们固守着Winform,其中就包括我. 好吧,既然都说Winform做得软件不如WPF界面美观效 ...
- NanUI for Winform 使用示例【第一集】——山寨个代码编辑器
NanUI for Winform从昨天写博客发布到现在获得了和多朋友的关注,首先感谢大家的关注和支持!请看昨天本人的博文<NanUI for Winform发布,让Winform界面设计拥有无 ...
- 基于.net开发chrome核心浏览器【七】
这是一个系列的文章,前面六篇文章的地址如下: 基于.net开发chrome核心浏览器[六] 基于.net开发chrome核心浏览器[五] 基于.net开发chrome核心浏览器[四] 基于.net开发 ...
随机推荐
- 在使用jquery时,(e.target).closest("li")是什么意思
今天在群里有童鞋问以下代码中: $(function(){ $(document).bind("click", function (e) { $(e.target).closest ...
- cocos2d 3.3 安装教程
最近在学习cocos-2d,百度一下cocos-2d,铺天盖地的都是cocos-2dx的教程,不得不说,老外还是钟情cocos2d,之前安装过cocos2d 2.0版本,网上的教程还是都是0.9的安装 ...
- 合并queryset
今天在实现搜索时遇到一个问题,如何同时搜索model里面的title以及content和category字典 contents = Blog.objects.filter(content__conta ...
- day_03 字符串
1.python基础数据类型 1.int整数 2.str 字符串.(不会用字符串保存大量数据) 3.bool 布尔值. TRUE,FALSE 4.list 列表(重点) 存放大量数据 用[]表示 5. ...
- java坏境内存不够用 大量占用swap 临时加swap
dd if=/dev/sda of=/tmp/mbr.bin bs=512 count=1 查询2进制文件 file 看文件类型 思路 创建一个大文件作为swap 1.1创建文件 [root ...
- jq得到总价
<html><head> <title></title> {load href="/static/js/jquery-1.9.1.min.js ...
- WIN2008R2 asp.net core的配置
配置IIS Windows Server上通过“添加角色和功能”,桌面Windows上通过“启用和关闭Windows功能”来安装和配置IIS.确保勾选Web服务和“IIS 管理控制台”: Window ...
- spring boot 入参方式
方式: 1).直接写,如public User index2(String name) 2).@RequestParam 与直接写的区别是,可以写默认值. 3).@RequestBody 因为传入的是 ...
- 配置中心:Nacos, Apollo, Consul, Etcd
Nacos, Apollo, Consul, Etcd 服务.应用不同粒度的配置更丰富的路由规则集中式管理的动态参数规则
- 安装pyautogui时报错备注
python3.6用pip安装pyautogui时报错,找了蛮多方法都不行,最后通过安装低版本的pyautogui解决,这里备注下 报错图 解决方法: pip install pyautogui==0 ...