• [技术干货] 【趁热打“帖”】ST-Link串口驱动安装--ST-Link VCP Ctrl驱动安装失败解决(Win7 64bits)
    本人电脑安装的系统: windows7 64bits   ghostST-Link驱动文件: en.stsw-link009.rar , 解压后文件如下图所示双击“stlink_winusb_install”,按照提示安装即可。由于使用的Windows系统不是正版的,极有可能出现安装不成功的情况。我的就出现了ST-link VCP ctrl驱动安装失败的情况。如下图电脑我的ST 开发板后,查看设备管理器,出现如下图的“ST-Link VCP Ctrl”感叹号  从安装失败信息“stmicroelectronics usbser.sys”去百度,找到了可以参考的解决ST-Link VCP Ctrl驱动安装失败的办法。 解决办法如下:1.       下载到win7 64位系统的三个文件:mdmcpq.Inf   mdmcpq.PNF  usbser.sys2.       双击,进入如下页面点击“更新驱动程序”,进入如下页面选择手动查找并安装驱动软件, 之后选择我所下载解压后的驱动的路径,如下图然后点击下一步,安装结果是失败的。3.       然后我们打开如下路径C:\Windows\System32\DriverStore\FileRepository\在此路径下我们去寻找一个文件夹stlink_vcp.inf_xxxxxxxx,可能如下图选中的那个文件夹即为我们要找的,然后将第1步提到的三个文件mdmcpq.Inf   mdmcpq.PNF  usbser.sys拷贝到到此文件夹中,之后重复步骤2,驱动将会安装成功,设备管理器中可以看到如下图。 4.       如果我们找不到第3点中提到的文件夹,我们可以自己创建它,给文件夹取个什么名字,我们需要去确定。首先在路径C:\Windows\inf下我们找到setupapi.dev.inf文件,如下图打开此文件,拉到最后,我们可以找到一个路径C:\windows\System32\DriverStore\FileRepository\stlink_vcp.inf_amd64_neutral_29e9917f088afd48\stlink_vcp.inf  那么我们要创建的文件夹的名字是“stlink_vcp.inf_amd64_neutral_29e9917f088afd48”, 另外我们还要找到文件stlink_vcp.inf, 这个文件可以在我们下载的驱动文件里找到, 然后我们将stlink_vcp.inf 、mdmcpq.Inf 、  mdmcpq.PNF 、 usbser.sys这四个文件拷贝到我们创建的文件夹里面,如下图最后重复第2的安装步骤即可安装成功。上图的stlink_vcp.PNF是安装完成之后生成的,不用管它。这里参考了两篇帖子,一是csdn的帖子“arduino Windows7 64位下驱动安装失败解决办法” 的方法解决了,非常感谢,帖子的链接如下http://blog.csdn.net/hiyohu/article/details/50215815二是单片机教学网的帖子“win7下安装arduino驱动失败的解决方法”,非常感谢,链接是:http://www.51hei.com/arduino/3816.html 
  • 华为云鲲鹏ARM服务器台风自动定位科学计算程序改造小结
    华为云鲲鹏ARM服务器台风自动定位科学计算程序改造小结           知道鲲鹏服务器上线后,先去了解了鲲鹏社区,看到很多中间件比如数据库等已经被移植完毕,但由于下手不够快RC6资源被飞快申请完了,还好华为云很贴心的提供了RC3资源,比RC6性能稍微弱一点,但完全不影响使用.      登录服务器检查了各种环境,看起来基于ARM64的linux和X86的没有太多区别,鲲鹏芯片的主频并不比服务器版比如至强X86低多少,但是由于指令集不一致,对比主频并没有实际意义     考虑了很久选择哪个程序进行移植测试,直接上MPI程序可能一两周也没有结果,从写过和改过的程序中选一个代码量中等比如2W行左右,自己比较熟悉的程序,同时很有代表性的程序,科学计算类的程序往往包含大量的数学库,需要一些相对小众的依赖库      根据这个标准最终选择了台风自动定强软件包ADT进行测试,该软件包含了Fortran和C/C++代码,运行需要编译和安装HDF5和NC库,同时包含不少图形学计算和动力学计算,涉及了卫星红外和微波处理流程,是一个相对典型的应用,自己也做过这个程序的容器化封装,基本看遍了大部分代码,因此选择这个程序在CentOS 7.5的ECS RC3实例上试水。移植过程:第一步,编译依赖库前    首先安装libcurl、gcc-gfortran、libtool等软件第二步,编译HDF5    这个时候会有第一个坑,如果用时HDF5.1.8版本,默认configure文件不支持arm64,需要去HDF对应官网上的论坛上下载,这是我验证后可用的configure.sub和guess文件wget 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD' -O bin/config.guess wget 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD' -O bin/config.sub    注意需要在编译选项中打开fortran接口支持,否则无法编译fortran程序第三步,编译NetCDF4.5.1           同样注意需要打开fortran接口,但NC库编译链接库的位置设置的方法和HDF5文件不一致,需要通过设置环境变量的方式,而不是像h5一样--with-XXlib=XX\XX的方式,强烈推荐编译完成后make test,看一下哪些样例能跑通,如果有Warning或者error需要特别留意,因为,后面应用程序很可能会有类似的问题无法编译通过 第四步,开始应用程序编译    修改makefile,指定编译器,建议首先去掉编译优化选项,打开-Wall    这个时遇到了真正有挑战的问题,代码编译不过去         看到这个问题的时候一脸懵逼,这是一个Fortran程序和C进行动态联接编译时出的错误,同样的程序在X86下编译完全没有问题,经过对代码分析,整个注释掉这个模块,确认是delaunay三角网构建C版本的程序中的 一些自定义的方法和声明没有在fortran调用程序中显式声明,gfortran 4.8.5 arm版本似乎不会自动去匹配.o和.mod中没有显示声明函数,这个看可能是arm gcc和gfortran的bug,也或者是没有找到对应的编译选项。       但是这个是重要计算过程,又不愿意放弃ADT中的微波数据处理模块,于是开始大量的修改代码中不规范的部分,所有引用显示声明,去掉typedef这种用法,经过大概2天的修改,终于能编译通过,同时还需要注意char类型的转换问题,arm64平台的有符号和无符号似乎是x86不一致,在处理一些卫星ID、标号时需要注意第五步,运行测试最终结果     ldd查看链接库是否正常     file确认是生成了 arm64的可执行程序     使用FY2数据进行测试,顺利运行得到结果,     可喜的是同样内存配置的X86 ecs,测试并没有发现arm版本运行显著变慢小结:     从开始做到可以正确运行结果,大概花了30多个小时,充分说明了就算是熟悉的程序,进行移植很可能也是不小的工作量,如果对要移植的代码不熟悉,同时对ARM系统不熟悉,很可能会束手无策,因此还是要提前分析和测试。       这个过程让我想起了多年前一个卫星正射影像计算程序需要移植到小型机,在power芯片上用xlc编译gdal的过程,大量的改库的代码,大约一个月才做出了一个勉强能跑,但由于对编译器和平台不熟悉,处理时长了3-4倍,性能比x86差一截的惨痛经历。     相比Power,ARM的生态看来确实好了很多, 如果希望建设ARM国产芯片的生态,更多的应该倡导鲲鹏而不是飞腾或者申威的方式,毕竟绝大多数人都没有机会和能力去做超算程序的改造,2019年基于x86的Scientific Linux 不再继续开发,或许是ARM构建科学计算生态的一个机遇。     未来还是很期待鲲鹏+昇腾芯片的服务器,如果这种产品的软件生态可以做起来,可以部分改变现在AI强烈依赖NVIDIA的现状,这样才能开始真的自主可控。
  • [技术干货] Agent Lite Demo(C-Windows) 操作指南参考
    1      准备资源1.1      开发环境Visual Studio2017:官网下载1.2      工具包工具包包括两个文件,分别为:·         网关设备配置信息:gwreginfo.json·         平台南向设备对接证书conf文件夹下,有rootcert.pem1.3      Demo资源·         Agent Lite Demo:AgentLite Windows C Demo·         网关profile文件:Gateway_Huawei_AgentLite01.zip·         子设备profile文件:Motion_Huawei_test01.zip 2      SP Portal创建应用注意:SP Portal的端口一般为8843若使用开发者Portal(端口一般为8093),则下发资源时已由系统创建好应用,可以忽略此步骤。 在调用OceanConnect平台开放的接口前,需要先登录OceanConnect平台的SP Portal界面,创建平台上的应用映射。2.1      登录SP PortalSP Portal登录地址:https://IP:8843(如:https://100.xx.xx.xxx:8843)。使用IoT平台资源邮件中的“平台Portal链接”和“登录账号/密码”信息登录SP Portal。2.2      创建App1.   进入SP Portal界面,点击“开始“2.   创建应用3.   进入到应用管理界面,开发者根据实际情况自行填写和选择配置。 ·         应用名称:可以为字母、数字或其组合(如Apptest001)。不能与平台中已有的应用名称重复。·         所属行业:应用的行业信息。在下拉框中选择即可。·         消息跟踪数据授权:自行选择。·         其他选项保持默认即可。4.   创建成功之后会弹出应用的基本信息,请注意保存应用ID和应用密钥如果应用密钥丢失可在系统管理 > 应用管理 > 应用列表 > 安全 > 重置 获取 3      上传profile文件至IoT平台将下载的profile文件上传至IoT平台,具体方法如下:在SP Portal界面,选择“设备管理 > 设备模型 > 导入设备模型”,选择需要上传的profile文件以同样的方法完成子设备profile文件的上传 4      修改工具包文件4.1      将三个工具包文件解压后,存放至同一路径下(如D:\SDK)。4.2      打开gwreginfo.json文件,依次修改对应的值。"mac":"TestTest001",(网关设备的唯一标识码,需在平台唯一,测试阶段可自定义)"platformAddr":"100.100.100.100",(平台南向设备对接地址)"platformPort":8943,(平台南向设备对接端口,8943一般不变)(以下信息要与网关设备的profile文件一一对应)"manufacturerId":"Huawei","deviceType":"Gateway","model":"AgentLite01","protocolType":"HuaweiM2M","loglevel":255 5      平台注册设备在SP Portal界面,选择“设备管理 > 设备 > 设备注册 > 创建” 在设备注册界面填写相关信息注册类型:选择动态密码模式设备识别码:与第4节中gwreginfo.json文件的mac值一致设备定义:产品产品选择:选择第3节中上传的网关profile文件点击提交,会弹出注册成功之后返回的设备相关信息在左侧菜单 点击所有设备 可以看到刚刚注册的设备,此时设备处于“离线”状态。 6      修改Demo工程代码6.1      解压缩AgentLiteDemo_windows_C_V19.2.0.zip双击demo.sln用vs打开6.2      修改Demo工程demo.h文件中的常量,将#define CONFIG_PATH后的内容修改为工具包文件存放路径。例如:#define CONFIG_PATH "D:/SDK"6.3      先注释Demo工程demo.c文件中的代码片段 7      编译与调试 修改完成后,运行 Demo如果程序没报错,在平台就可以看到设备在线。l  调用Gateway_DataReport接口上报数据l  调用AddSensors接口添加子设备l  调用Sensor_DataReport接口上报数据 具体的接口信息请参见文档:Agent Lite API参考(C)程序大致结构解析:·         调用IOTA_Init接口初始化Agent Lite资源。·         调用IOTA_Bind接口绑定设备至IoT平台。设备第一次接入IoT平台时需要进行绑定操作,上层应用通过调用该接口传入设备序列号或者MAC地址以及设备信息来绑定到IoT联接管理平台。在绑定前需要调用IOTA_SetConfig接口设置绑定服务器IP与端口(IoCM服务器地址与端口,Agent Lite会配置默认端口8943)。当调用IOTA_Bind接口绑定设备成功时,会在工具包文件夹下生成一个gwbindinfo.json文。此时,SP Portal中可以看到设备变为“在线”状态。·         调用IOTA_Login接口使设备登录。设备在第一次绑定后,或者在设备重启后需要进行登录。·         调用AddSensors接口添加子设备BatteryCal。·         调用Device_ServiceDataReport接口上报数据。·         调用Device_ServiceCommandReceive接口接收命令。  附:程序执行之后在工作路径(D:/SDK)下有以下文件开发者一般只需关注以下两个文件gwbindinfo.json:设备绑定成功之后生成UGP_0.log:程序运行日志,如果连接过程中有问题,可查看此日志
  • [教程] Windows/Linux平台设置OBS obsutil工具定时任务(e.g, 定时同步增量上传指定目录中的文件)
    1      操作场景利用obsutil工具,可以在Windows/Linux平台设置定时任务,完成定时同步增量上传指定目录中的文件,或者定时将成功上传的文件移动另一个本地目录等功能。本文以“定时同步增量上传指定目录中的文件” 功能为例,讲述如何在2种平台上进行定时任务配置。2      前提条件a)     已经从OBS官网上下载了指定版本的obsutil工具包,有Windows 64位版本和Linux 64位版本供选择;b)     Windows平台:需要确认能运行打开任务计划程序(在Windows中搜索任务计划程序并成功打开),如图2.1所示。Linux平台:需要确认已正常开启crond定时任务计划服务(运行 service crond status 命令可查看是否开启该服务),如图2.2所示。图2.1 Windows平台搜索任务计划程序并打开图2.2 Linux平台确认正常开启了crond定时任务计划服务c)     使用obsutil之前,需要配置obsutil与OBS的对接信息,包括OBS终端节点地址(Endpoint)和访问密钥(AK和SK)。获得OBS的认证后,才能使用obsutil执行OBS桶和对象的相关操作。Windows平台:使用配置命令 obsutil config -i=ak -k=sk -e=endpoint,之后使用命令 obsutil ls –s,如果返回结果中包含“Bucket number is:”表明配置正确。Linux平台:使用配置命令 ./obsutil config -i=ak -k=sk -e=endpoint,之后使用命令 ./obsutil ls –s,如果返回结果中包含“Bucket number is:”表明配置正确。3      配置步骤(Windows运行平台)3.1      创建任务右击“任务计划程序库”,选中“创建任务”。添加名称、描述,安全选项根据实际需要进行选择。3.2      配置“触发器”页签高级设置根据实际需要进行选择,下图中选择无限期每隔1小时执行1次任务。 3.3      配置“操作”页签点击“操作”页签,新建操作,操作类型选择“启动程序”。程序或脚本选择的是obutil工具(C:\Users\Administrator\obsutil_windows_amd64\obsutil.exe),根据obsutil工具存放的实际路径进行选择。添加参数为 sync C:\Users\Administrator\Downloads\ obs://chongchong-test-win/upload/Downloads/,此命令实现将C:\Users\Administrator\Downloads\目录下的数据同步增量上传到chongchong-test-win桶的/upload/Downloads/目录下。3.4      配置“条件”页签根据实际需要进行选择配置,此处中采用默认值。3.5      配置“操作”页签根据实际需要进行选择配置,引处采用默认值。按照上述3.1-3.5的配置,Windows平台会每隔1小时,自动将 C:\Users\Administrator\Downloads\ 目录下的数据同步增量上传到chongchong-test-win桶的 /upload/Downloads/ 目录下。 4      配置步骤(Linux运行平台)a)     执行 crontab –e 命令,打开编辑定时任务的配置文件。b)    进入Insert模式开始编辑配置文件。30 21 * * * cd /root && nohup ./obsutil sync /home/Downloads/ obs://bucket-test/Downloads/ &>obsutil_crond.log &假设obsutil工具位于/root目录下,上述配置的定时任务含义为:每天21:30进入/root目录下,执行增量上传/home/Downloads/文件夹到obs://bucket-test/Downloads/桶内并将命令的输出内容重定向到/root下的obsutil_crond.log中。c)     按Esc退出Insert模式,并输入:wq保存并退出。d)    执行命令:crontab -l,查看当前用户已配置的定时任务,确认配置成功。     注:Ø  crontab如何配置,可以参考链接https://www.cnblogs.com/coffy/p/5608095.html。
  • [问题求助] Windows 7操作系统运行LocalCSE失败,30103端口服务启动失败
    备注: 共有云的LocalCSE版本
  • [产品体验官] 华为云提供针对Nuget包管理器的缓存加速服务测试
    在Visual Studio 2013、2015、2017中,使用的是Nuget包管理器对第三方组件进行管理升级的。而且 Nuget 是我们使用.NET Core的一项基础设施,.NET的软件包管理器NuGet.org是一项面向全球用户搭建的服务,不论用户身在何处,NuGet.org都应该有能力提供高性能的服务。2017 年微软针对中国访问Nuget服务的访问慢的问题进行了优化,把Blob存储备份到中国本地,并使用本地CDN服务商来处理软件包下载请求,具体参考 https://blog.nuget.org/20170907/Changes-to-NuGet-dot-org-service-management-and-performance-improvements-in-China.html。Nuget包的API分为搜索、注册和存储三大类。其中使用最为频繁的是注册和存储两类API。华为云镜像站点https://mirrors.huaweicloud.com/ 的Nuget镜像 包含了缓存的反向代理来加速这些API。 使用这个镜像可以在华为云和在应用开发可实现如下加速效果:对于包的搜索:无加速效果。搜索组件包是由额外的域名提供的,因此无法提供加速。本加速仅针对 api.nuget.org 进行,目前仅支持 v3 版本的 api 以及包存储安装、卸载、升级包等:完全加速。所有包信息均按天缓存在服务器上,每天每个包第一次访问为代理访问,随后均为本地访问包安装、升级下载文件:完全加速。每个包的每个版本第一次下载微代理访问,之后所有同样版本、ID的包均为本地访问华为云的镜像服务需要登陆后才能看到镜像地址:https://repo.huaweicloud.com/repository/nuget/v3/index.json使用方法:在Visual Studio中点击“工具”-“选项”,左侧找到“Nuget包管理器”-“程序包源”,确认您的列表中包含有V3版的API(https://api.nuget.org/v3/index.json)。华为云的加速服务仅支持V3版包源,如果没有这个记录,那么您可能无法使用加速服务,请升级您的Nuget包管理器。点击添加按钮,然后在下方输入信息:名称:huaweicloud包地址:https://repo.huaweicloud.com/repository/nuget/v3/index.json输入后,点击更新按钮更新,最后确认并关闭配置。上面设置后,Nuget的配置文件里就加入了相关配置,文件位置在:C:\Users\geffzhang\AppData\Roaming\NuGet\Nuget.config ,其中geffzhang 是我的电脑账号,更换你的账号,下面是我的Nuget 配置样例:<?xml version="1.0" encoding="utf-8"?><configuration>   <packageSources>   <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />   <add key="orc**" value="https://www.myget.org/F/orc**-preview/api/v3/index.json" />   <add key="tarsnet" value="https://www.myget.org/f/tarsnet" />    <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />     <add key="huaweicloud" value="https://repo.huaweicloud.com/repository/nuget/v3/index.json" />   </packageSources>   <packageRestore>     <add key="enabled" value="True" />     <add key="automatic" value="True" />   </packageRestore>   <bindingRedirects>     <add key="skip" value="False" />   </bindingRedirects>   <packageManagement>     <add key="format" value="0" />     <add key="disabled" value="False" />   </packageManagement></configuration>上述操作我们都是在windows 10 上的,特别是做.NET Core的开发,很多同学喜欢用Mac,如果是Mac 与 Linux 中的路径是,那么路径是在 ~/.nuget/NuGet/NuGet.Config。上面的配置是全局的配置, 如果我们的项目使用的是华为云的DevCloud 的持续集成可以在项目中引入Nuget.config来完成:<?xml version="1.0" encoding="utf-8"?>< configuration>   <packageSources>        <add key="huaweicloud" value="https://repo.huaweicloud.com/repository/nuget/v3/index.json" />   </packageSources>   <packageRestore>     <add key="enabled" value="True" />     <add key="automatic" value="True" />   </packageRestore>   <bindingRedirects>     <add key="skip" value="False" />   </bindingRedirects>   <packageManagement>     <add key="format" value="0" />     <add key="disabled" value="False" />   </packageManagement>< /configuration>当你使用dotnet restore 时也可以通过 –s 指定使用华为云镜像,下面我们就用这种方法来测试下华为云的镜像的速度,下面我用两个项目来测试,测试结果表明 华为云的镜像的速度还是要比官方的要快:D:\workshop\Github\abp\modules\account>dotnet restore -s https://repo.huaweicloud.com/repository/nuget/v3/index.json   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.Contracts\Volo.Abp.AspNetCore.Mvc.Contracts.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.ApiVersioning.Abstractions\Volo.Abp.ApiVersioning.Abstractions.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bundling\Volo.Abp.AspNetCore.Mvc.UI.Bundling.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Packages\Volo.Abp.AspNetCore.Mvc.UI.Packages.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc\Volo.Abp.AspNetCore.Mvc.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI\Volo.Abp.AspNetCore.Mvc.UI.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.Contracts\Volo.Abp.AspNetCore.Mvc.Contracts.csproj 的还原在 446.67 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.ApiVersioning.Abstractions\Volo.Abp.ApiVersioning.Abstractions.csproj 的还原在 446.67 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore\Volo.Abp.AspNetCore.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Auditing\Volo.Abp.Auditing.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Auditing\Volo.Abp.Auditing.csproj 的还原在 68.02 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Authorization\Volo.Abp.Authorization.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Authorization\Volo.Abp.Authorization.csproj 的还原在 49.81 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore\Volo.Abp.AspNetCore.csproj 的还原在 203.87 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Caching\Volo.Abp.Caching.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Caching\Volo.Abp.Caching.csproj 的还原在 88.01 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AutoMapper\Volo.Abp.AutoMapper.csproj 的还原在 80.04 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc\Volo.Abp.AspNetCore.Mvc.csproj 的还原在 910.08 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Data\Volo.Abp.Data.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Core\Volo.Abp.Core.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared\Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared.csproj 的还原在 921.41 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Packages\Volo.Abp.AspNetCore.Mvc.UI.Packages.csproj 的还原在 955.39 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bundling\Volo.Abp.AspNetCore.Mvc.UI.Bundling.csproj 的还原在 954.79 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI\Volo.Abp.AspNetCore.Mvc.UI.csproj 的还原在 923.08 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap\Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.csproj 的还原在 970.79 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Ddd.Application\Volo.Abp.Ddd.Application.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.EventBus\Volo.Abp.EventBus.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Ddd.Domain\Volo.Abp.Ddd.Domain.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Guids\Volo.Abp.Guids.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Http.Abstractions\Volo.Abp.Http.Abstractions.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Core\Volo.Abp.Core.csproj 的还原在 116.76 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Data\Volo.Abp.Data.csproj 的还原在 116.35 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Http\Volo.Abp.Http.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Json\Volo.Abp.Json.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Ddd.Application\Volo.Abp.Ddd.Application.csproj 的还原在 93.06 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.EventBus\Volo.Abp.EventBus.csproj 的还原在 92.87 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Localization.Abstractions\Volo.Abp.Localization.Abstractions.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Http.Abstractions\Volo.Abp.Http.Abstractions.csproj 的还原在 85.25 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Localization\Volo.Abp.Localization.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Guids\Volo.Abp.Guids.csproj 的还原在 115 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Ddd.Domain\Volo.Abp.Ddd.Domain.csproj 的还原在 130.02 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.MultiTenancy.Abstractions\Volo.Abp.MultiTenancy.Abstractions.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Http\Volo.Abp.Http.csproj 的还原在 96.88 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Security\Volo.Abp.Security.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.ObjectMapping\Volo.Abp.ObjectMapping.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Settings\Volo.Abp.Settings.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Serialization\Volo.Abp.Serialization.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Json\Volo.Abp.Json.csproj 的还原在 92.34 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Threading\Volo.Abp.Threading.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Localization.Abstractions\Volo.Abp.Localization.Abstractions.csproj 的还原在 90.79 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Localization\Volo.Abp.Localization.csproj 的还原在 120.39 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.MultiTenancy.Abstractions\Volo.Abp.MultiTenancy.Abstractions.csproj 的还原在 106.73 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Security\Volo.Abp.Security.csproj 的还原在 83.47 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Serialization\Volo.Abp.Serialization.csproj 的还原在 81.14 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.ObjectMapping\Volo.Abp.ObjectMapping.csproj 的还原在 90.69 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Settings\Volo.Abp.Settings.csproj 的还原在 92.39 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.UI.Navigation\Volo.Abp.UI.Navigation.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Timing\Volo.Abp.Timing.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.UI\Volo.Abp.UI.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Validation\Volo.Abp.Validation.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Threading\Volo.Abp.Threading.csproj 的还原在 85.68 ms 内完成。   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.Uow\Volo.Abp.Uow.csproj 的包...   正在还原 D:\workshop\Github\abp\framework\src\Volo.Abp.VirtualFileSystem\Volo.Abp.VirtualFileSystem.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\account\src\Volo.Abp.Account.Web\Volo.Abp.Account.Web.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\identityserver\src\Volo.Abp.IdentityServer.Domain.Shared\Volo.Abp.IdentityServer.Domain.Shared.csproj 的包...   D:\workshop\Github\abp\framework\src\Volo.Abp.Timing\Volo.Abp.Timing.csproj 的还原在 128.06 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.UI\Volo.Abp.UI.csproj 的还原在 128.03 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.VirtualFileSystem\Volo.Abp.VirtualFileSystem.csproj 的还原在 91.36 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.UI.Navigation\Volo.Abp.UI.Navigation.csproj 的还原在 147.08 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Validation\Volo.Abp.Validation.csproj 的还原在 143.89 ms 内完成。   D:\workshop\Github\abp\framework\src\Volo.Abp.Uow\Volo.Abp.Uow.csproj 的还原在 111.94 ms 内完成。   D:\workshop\Github\abp\modules\identityserver\src\Volo.Abp.IdentityServer.Domain.Shared\Volo.Abp.IdentityServer.Domain.Shared.csproj 的还原在 107.53 ms 内完成。   正在还原 D:\workshop\Github\abp\modules\permission-management\src\Volo.Abp.PermissionManagement.Domain.Shared\Volo.Abp.PermissionManagement.Domain.Shared.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\identity\src\Volo.Abp.Identity.Domain.Shared\Volo.Abp.Identity.Domain.Shared.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\identityserver\src\Volo.Abp.IdentityServer.Domain\Volo.Abp.IdentityServer.Domain.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\identity\src\Volo.Abp.Identity.AspNetCore\Volo.Abp.Identity.AspNetCore.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\users\src\Volo.Abp.Users.Abstractions\Volo.Abp.Users.Abstractions.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\permission-management\src\Volo.Abp.PermissionManagement.Domain\Volo.Abp.PermissionManagement.Domain.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\identity\src\Volo.Abp.Identity.Domain\Volo.Abp.Identity.Domain.csproj 的包...   D:\workshop\Github\abp\modules\permission-management\src\Volo.Abp.PermissionManagement.Domain.Shared\Volo.Abp.PermissionManagement.Domain.Shared.csproj 的还原在 119.46 ms 内完成。   D:\workshop\Github\abp\modules\identity\src\Volo.Abp.Identity.Domain.Shared\Volo.Abp.Identity.Domain.Shared.csproj 的还原在 136.13 ms 内完成。   D:\workshop\Github\abp\modules\users\src\Volo.Abp.Users.Abstractions\Volo.Abp.Users.Abstractions.csproj 的还原在 119.18 ms 内完成。   D:\workshop\Github\abp\modules\permission-management\src\Volo.Abp.PermissionManagement.Domain\Volo.Abp.PermissionManagement.Domain.csproj 的还原在 207.33 ms 内完成。   D:\workshop\Github\abp\modules\identity\src\Volo.Abp.Identity.Domain\Volo.Abp.Identity.Domain.csproj 的还原在 204.05 ms 内完成。   正在还原 D:\workshop\Github\abp\modules\users\src\Volo.Abp.Users.Domain.Shared\Volo.Abp.Users.Domain.Shared.csproj 的包...   正在还原 D:\workshop\Github\abp\modules\users\src\Volo.Abp.Users.Domain\Volo.Abp.Users.Domain.csproj 的包...   D:\workshop\Github\abp\modules\identity\src\Volo.Abp.Identity.AspNetCore\Volo.Abp.Identity.AspNetCore.csproj 的还原在 249.32 ms 内完成。   D:\workshop\Github\abp\modules\users\src\Volo.Abp.Users.Domain.Shared\Volo.Abp.Users.Domain.Shared.csproj 的还原在 48.91 ms 内完成。   D:\workshop\Github\abp\modules\users\src\Volo.Abp.Users.Domain\Volo.Abp.Users.Domain.csproj 的还原在 93.33 ms 内完成。   D:\workshop\Github\abp\modules\identityserver\src\Volo.Abp.IdentityServer.Domain\Volo.Abp.IdentityServer.Domain.csproj 的还原在 437.86 ms 内完成。   D:\workshop\Github\abp\modules\account\src\Volo.Abp.Account.Web\Volo.Abp.Account.Web.csproj 的还原在 699.7 ms 内完成。
  • [技术干货] 如何判断s启动方式是UEFI或者是BIOS
    如何判断windows启动方式是UEFI或者是BIOS废话不多说,直接上教程。方法一Win+R,打开运行,输入diskmgmt.msc,在主硬盘上右键单击,右键看到转换为【MBR】那么说明为【UEFI】启动。看到为转换为【GPT】,那么说明为【BIOS】模式启动的方法二1、按下win+R打开运行,输入msinfo32,确定,打开系统信息;2、查看BIOS模式是否为UEFI方法三1. 运行命令提示符(管理员)2. 输入bcdedit回车3. 找path开头的行,结尾是exe的话就是BIOS,结尾是efi的话就是UEFI 
  • [问题求助] 期盼高手,哪款4G无线路由器可以与Windows Server 2008 R2 云主机设置VPN?如何设置?
    现在用4G无线路由器是8311As-853,下挂物联网传感器,Windows Server 2008 R2 云主机平台接收传感器报警信息。联网模式平台找终端。
  • [技术干货] 【零代码】Agent Lite开发流程初体验(Windows环境)【转】
    (转自 原开发者社区  感谢@逆光飞翔   大大的分享)华为IoT Agent Lite在智慧家庭、工业物联网、车联网等领域为智能设备提供了标准接入华为IoT联接管理平台的能力,主要面向IPC、轻量级网关、工业网关、车机等计算能力较强的终端/网关设备。按照本帖的操作流程指导,开发者可以快速体验直连设备通过集成Agent Lite快速接入华为IoT平台,体验数据上报、命令接收、添加非直连设备等功能。更全面、系统的开发指南资料请参考:https://support.huaweicloud.com/devg-IoT/iot_02_5053.html1 准备资源 1.1 开发环境Visual Studio:官网下载 1.2 工具包工具包包括三个文件,分别为:网关设备配置信息:gwreginfo.json子设备信息:deviceinfo.json网关设备标识码:esn.ini1.3 Demo资源profile文件Demo:包括网关设备profile(Gateway_eSDKHuawei_g002.zip)和子设备profile(BatteryCal_eSDKHuawei_g001.zip)。Agent Lite Demo:华为IoT Agent Lite Demo(C-Windows) 下载地址:https://support.huaweicloud.com/devg-IoT/iot_02_1004.html  2 修改工具包文件Step 1 将三个工具包文件解压后,存放至同一路径下(如D:\AgentLite)。Step 2 打开gwreginfo.json文件,依次修改esnfilepath、platformaddr的值。esnfilepath:改为esn.ini文件的存放路径。(如 "esnfilepath":"D:/AgentLite/esn.ini")platformaddr:改为实际获取到的IoT平台资源的IP地址。(如"platformaddr":"218.xx.xx.72")Step 3 修改esn.ini中的数值为网关设备的标识码,修改deviceinfo.json文件中的NodeId为子设备的标识码,保持esn和NodeId的唯一性,不能与已注册设备重复。若无实际设备,此步骤的标识码可以自己定义。3 修改Demo工程代码Step 1 解压缩Agent Lite Demo,此处我们只使用Agent Lite(C)-win(Gateway Demo)。Step 2 修改Gateway Demo工程demo.h文件中的常量,将#define CONFIG_PATH后的内容修改为工具包文件存放路径。例如:#define CONFIG_PATH "D:/AgentLite"Step  3 修改Demo工程demo.c文件中的代码片段,具体修改内容见下:原代码如下:HW_INT main(){    ......        // 延时时间长一点,防止还在做添加删除操作时,IOTA_Logout()已经执行了    HW_Sleep(100);    IOTA_Logout();    HW_LOG_INF("IOTA_Logout");    HW_Sleep(5);    IOTA_Destroy();    HW_LOG_INF("IOTA_Destroy");        ......    }......HW_INT Device_AddResultHandler(HW_UINT uiCookie, HW_MSG pstMsg){    ......        HW_Sleep(10);    if(HW_NULL != g_cDeviceId)    IOTA_HubDeviceRemove(g_uiCookie, g_cDeviceId);        return HW_OK;}HW_INT Device_ImitateDate( HW_CHAR **pcJsonStr){        ......       HW_JsonAddUint(json, (HW_CHAR*)"batteryLevel", (HW_INT)3);        *pcJsonStr = HW_JsonEncodeStr(hJsonObj);           return HW_OK; }修改后的代码如下:HW_INT main(){    ......        // 延时时间长一点,防止还在做添加删除操作时,IOTA_Logout()已经执行了    HW_Sleep(100);    // IOTA_Logout();    HW_LOG_INF("IOTA_Logout");    HW_Sleep(5);    // IOTA_Destroy();    HW_LOG_INF("IOTA_Destroy");        ......    }......HW_INT Device_AddResultHandler(HW_UINT uiCookie, HW_MSG pstMsg){    ......        HW_Sleep(10);    // if(HW_NULL != g_cDeviceId)    // IOTA_HubDeviceRemove(g_uiCookie, g_cDeviceId);        return HW_OK;}HW_INT Device_ImitateDate( HW_CHAR **pcJsonStr){        ......        // HW_JsonAddUint(json, (HW_CHAR*)"batteryLevel", (HW_INT)3);       HW_JsonAddStr(json, (HW_CHAR*)"BatteryCur", (HW_CHAR*)"HIGH");       *pcJsonStr = HW_JsonEncodeStr(hJsonObj);           return HW_OK; }4 编译与调试 修改完成后,运行VS Demo。具体的接口信息请参见文档:《Agent Lite API参考(C)》程序大致结构解析:调用IOTA_Init接口初始化Agent Lite资源。调用IOTA_Bind接口绑定设备至IoT平台。设备第一次接入IoT平台时需要进行绑定操作,上层应用通过调用该接口传入设备序列号或者MAC地址以及设备信息来绑定到IoT联接管理平台。在绑定前需要调用IOTA_SetConfig接口设置绑定服务器IP与端口(IoCM服务器地址与端口,Agent Lite会配置默认端口8943)。当调用IOTA_Bind接口绑定设备成功时,会在工具包文件夹下生成一个gwbindinfo.json文。此时,SP Portal中可以看到设备变为“在线”状态。调用IOTA_Login接口使设备登录。设备在第一次绑定后,或者在设备重启后需要进行登录。调用AddSensors接口添加子设备BatteryCal。      调用Device_ServiceDataReport接口上报数据。      调用Device_ServiceCommandReceive接口接收命令。附:日志级别设定EN_LOG_LEVEL_NONE = 0x00000000EN_LOG_LEVEL_ERROR = 0x00000001EN_LOG_LEVEL_WARN = 0x00000002EN_LOG_LEVEL_INFO = 0x00000004EN_LOG_LEVEL_DEBUG = 0x00000008EN_LOG_LEVEL_TRACE = 0x00000020EN_LOG_LEVEL_QOE = 0x00000040EN_LOG_LEVEL_ALL = 0x000000FF工具包.rarBatteryCal_eSDKHuawei_g001.zipGateway_eSDKHuawei_g002.zip
  • 需求一个tensorflow 1.3.0 CPU 版本适用于windows的
    一个tensorflow都没有,及时配一下呗
  • 能不能为windows用户提供docker windows stable版本的安装包
    docker官方下载实在是无力吐槽了。前阵子,华为云提供了DockerHub镜像加速。考虑到windows的用户还是有很多,能不能为windows用户提供docker for  windows 版本的stable安装包。
  • [技术干货] 华为云OBS服务新版本命令行工具-obscmd发布(兼容Linux、Windows)
           新版obscmd是一款基于Python开发的命令行工具,相对于旧版obscmd工具,不论是在功能上还是易用性都做了很大完善,可用于上传、下载和管理存储在对象存储服务中的数据,具有简单、易用等优势。您可以使用新版obscmd对OBS中的桶和对象进行操作,例如上传、下载、删除等。对于熟悉命令行程序的用户,新版obscmd是执行批量处理、自动化任务的理想选择。 工具下载地址 :obscmd-v5.0.0_beta使用指南下载地址:obscmd用户指南(5.0.0_beta)源代码获取地址:github_obscmd本工具完全开源,您可以自行改造,并用于商业或个人行为而不受影响。 跨平台:Windows、Linux都可以运行。操作方便:完全命令行的方式进行操作。功能完善:拥有桶基本操作,对象基本操作,桶权限管理,生命周期管理等功能。透明化:您可以看到完整的源码,我们稍后也会开源到Github。 支持文件和文件夹的上传、下载、删除等操作。通过Multipart方式,对大文件进行分片上传或下载。支持断点续传,支持增量上传。 工具运行环境需要依赖python2.7.x或python3.3以上。若使用python2.7.x在windows系统上安装后不能成功运行,则尝试运行下面命令进行安装:       python setup.py bdist_wininst       安装完毕后,即可使用。 初始化配置文件:       工具操作系统上第一次运行命令时会生成本地目录~/.obscmd,在操作系统系统会在当前用户目录下生成.obscmd目录。其中logs存放日志文件。checkpoint存放断点续传文件。工具的配置信息放在本地文件.obscmd/obscmd.ini中。       运行以下命令,配置或修改本地obscmd配置文件中的access_key_id和secret_access_key值。运行该命令会弹出提示用户输入对应值。       $ obscmd configure        OBS Access Key ID [****************KL9C]: ssdfwer234dfg       OBS Secret Access Key [****************2GHF]: 23o4uouweorsdf       OBS Server [*****]:       也可根据需要手动修改配置文件obscmd.ini。       命令在运行过程中会读取本地用户目录下.obscmd/obscmd.ini和.obscmd/default.ini文件,其中default.ini为工具默认配置文件,不建议用户修改;工具会优先选择obscmd.ini中的配置参数。这些配置包括了客户端的权限信息AK&SK,日志配置、任务配置等信息。命令运行的日志保存在~/.obscmd/logs目录汇中。用户可根据情况修改obscmd.ini文件进行配置。除了在配置文件中指定AK&SK,用户也可以在每条命令行中通过参数指定:       $ obscmd obs ls --ak slafjwe23 --sk lkjdlf234wefa 命令结构:       新版obscmd目前只实现了OBS服务相关命令,命令设计为两级命令。命令结构如下:       $ obscmd <command> <subcommand> [options and parameters]       $标识命令行提示符,不同操作系统不同用户权限可能会有差异。这种结构一开始是对obscmd的基本调用。下一部分command指定一个顶级命令,通常表示obscmd中支持的华为云服务。每个云服务均拥有指定要执行的操作的附加子命令subcommand。一个操作的常规命令选项或特定参数可在命令行中以任何顺序指定。如果多次指定某个排他参数,则仅应用最后一个值。 命令帮助:       要在使用obscmd时获取帮助,您只需在命令末尾添加 help。例如,以下命令会列出常规 obscmd选项和可用顶层命令的帮助。       每个命令的帮助分为五个部分:命令名称、命令描述、命令结构、命令选项、命令使用样例。       $ obscmd help       以下命令会列出 obs 顶级命令的相关帮助:       $ obscmd obs help       以下命令会列出 obs 的ls子命令相关帮助:       $ obscmd obs ls help
  • [新特性] 视频点播上线新功能(支持从Windows批量上传视频文件)啦
    发布日志管理服务【新功能】:支持从Windows批量上传视频文件功能详细描述:提供从Windows端批量视频文件上传工具说明:本工具使用要求JDK版本不低于JDK8版本。操作步骤1.    下载解压工具包,工具包下载路径。下载VodProcessTool-windows.zip到本地,使用7-zip或者其他工具进行解压。一次解压后,如图1所示。a.    Docs:操作手册文件目录b.    VodProcessTool-1.0-SNAPSHOT-windows.zip:程序包图1 一次解压二次解压缩程序包后,如图2所示。c.    Conf: 配置文件目录d.    VodProcessTool.jar:主程序图2 二次解压2.    双击主程序VodProcessTool.jar配置上传任务图3 主程序界面配置参数详见 表1。3.    配置完成后,单击“start”,开始上传视频。4.    验证上传结果。上传视频结束后,可登录华为公有云视频点播服务,查看管理媒资状态,也可根据工具记录的相关日志查看媒资状态。工具启动后,在工具安装目录下会自动生成/ecs/record或者/obs/record目录,里面会保存几类执行记录文件,如表2。5.    上传失败,转码失败的任务,排查出失败原因后,重新启动工具,即可自动执行失败任务,已成功的任务不会再执行。
  • [上云精品] Linux/windows软件环境配置
    服务内容:网站类Php相关环境配置单次/单台Java相关环境配置.Net相关环境配置Node.js相关环境配置数据库类SqlServer(需授权)Mysql相关环境Mongodb相关环境Oracle相关环境(需授权)缓存类MemcacheRedisTTserver集群类负载均衡类高可用类注:1、如果遇到其他环境配置需求,请联系我放工程师做方案评估。服务流程:提交需求 > 确认需求 > 开始实施 > 完成确认 > 服务质保服务优势:华为云资深合作伙伴——学语派网络科技,凭借专业的研发团队、云架构师团队、运维团队为用户实现一站式的云入驻服务。产品参数交付方式人工服务依托云产品云服务器质保时间7天交付时间3天产品价格(此处价格仅供参考,实际价格以选配后的价格为准)版本名称计费项新购标准版版本基础价格500元
  • [上云精品] PHP多版本环境(Windows2012 | phpStudy)
    由Websof9提供的phpStudy镜像是一个预安装环境,可在ECS上一键安装。phpStudy是一个PHP环境集成包,支持php5.2到7.0多个版本切换,同时支持Apache,Nginx,IIS产品亮点● 基于phpStudy集成包制作,无任何冗余组件,代码纯净、稳定可靠● 支持Apache+Nginx+LightTPD+IIS等Web服务器,支持php5.2/php5.3/php5.5/php7.0自由切换● 全部通过图形化界面实现,配置和管理多个网站、配置域名、管理服务、管理端口等● 内置Websoft9自主研发的9panel运维面板,帮助您快速掌握程序安装和运维工作产品说明phpStudy StackWebsoft9提供的phpStudy适用于在Windows下快速的安装部署PHP应用程序,省去繁琐的配置工作,事半功倍。phpStudy是一个PHP环境集成包,支持Apache+Nginx+LightTPD+IIS等Web服务器,支持php5.2/php5.3/php5.5/php7.0自由切换。全部通过图形化界面实现,配置和管理多个网站、配置域名、管理服务、管理端口等组件phpStudy2017,php5.2/5.3/5.4/5.5/5.6/7.0,mysql5.5.53,Apache2.4.12,Nginx,phpMyAdmin,9panel免费使用