未发布 MailBee.NET Objects发送电子邮件(SMTP)教程三:没有SMTP服务器的情况下发送消息 发送消息的最简单的方法是使用Smtp类的QuickSend方法(此方法是静态的,不需要你创建Smtp类的实例)。
即使没有SMTP服务器,QuickSend方法也可以发送电子邮件。该方法通过向网络设置中注册的DNS服务器进行查询,确定哪些服务器接收电子邮件的To / CC / BCC字段中指定的域的邮件,然后将电子邮件直接发送到收件人的邮件服务器。
C#: MailBee.SmtpMail.Smtp.QuickSend("jdoe@domain.com", "bill@domain.com", "Subject", "Message Body"); |
VB.NET: MailBee.SmtpMail.Smtp.QuickSend("jdoe@domain.com", "bill@domain.com", "Subject", "Message Body") |
如果要手动指定DNX MX查找DNS服务器,可以编辑应用程序的app.config或web.config文件,并将MailBee.DnsMX.DnsServerCollection键放该位置。有关详细信息,请参阅DnsAutodetectOptions文档。
备用(和更高级)的方法是创建Smtp对象并手动指定DNS服务器的IP地址:
C#: mailer.DnsServers.Add("127.0.0.1"); |
VB.NET: mailer.DnsServers.Add("127.0.0.1") |
要通过检查系统属性自动填充Dns服务器,请使用Autodetect方法(顺便说一下,QuickSend方法可以使用Autodetect来确定可用的DNS服务器列表):
C#: mailer.DnsServers.Autodetect(); |
VB.NET: mailer.DnsServers.Autodetect() |
此外,你可以指定用于调整在系统中注册的DNS服务器的自动检测选项。有关详细信息,请参阅DnsAutodetectOptions文档。
注意:由于发送垃圾邮件的人经常使用直接发送操作,因此许多邮件服务不接受来自未知主机的邮件提交。建议仅从指定的MX、PTR和SPF记录的域执行直接发送操作。在这种情况下,接收邮件的主机将能够验证发件人的域名并接受邮件提交请求。
未发布 Essential Studio for JavaScript发布2017 v4版本,添加Essential JS 2工具包 ESSENTIAL JS 2:企业级JAVASCRIPT UI工具包
Essential JS 2是一个现代的JavaScript UI工具包,具有轻量级、响应式和模块化的特点。它是用TypeScript编写的,完全支持Angular和React框架的完整支持。目前有以下组件可供使用:
Grid
Chart
Drop-Down List
Tree View
Date Picker
Dialog
Numeric Text Box
Tab
Toolbar
Circular Gauge
Linear Gauge
Form Validator
Combo Box
Autocomplete
Multiselect Drop-Down
Calendar
Date Range Picker
Button
Radio Button
Check Box
Text Box
Time Picker
Masked Text Box
List View
Tooltip
Context Menu
Accordion
支持ANGULAR 5
用于Angular组件的基本JavaScript已经升级到无缝支持Angular 5。
组合框
新的控件
组合框组件允许用户输入一个值或从预定义选项列表中选择一个选项。单击此组件的箭头图标时,下拉列表将显示用户可以从中选择的值列表。
主要特征
数据绑定:允许绑定和访问本地或服务器端数据源的项目列表。
分组:支持将单个或特定类别下的逻辑相关项目进行分组。
排序:支持按字母顺序(升序或降序)排序列表项。
过滤:允许根据组件中输入的字符过滤列表项目。
模板:允许自定义列表项目、选定的值、页眉、页脚、类别组页眉。
可访问性:内置的可访问性支持有助于通过键盘、屏幕阅读器或其他辅助技术设备访问所有组件的功能。
媒体播放器
新的控件
JavaScript的媒体播放器提供了一个简单而强大的视频和音频播放器,内置控制选项。它支持HTML5标准音频和视频格式,如MP4、MP3、WebM和Ogg。
主要特征
CHART
轴标签
支持显示多行轴标签。
显示外部数据标签
现在可以在图表区域内显示部分可见的数据标签。
数据管理器
防伪
防伪令牌可用于帮助保护应用程序免受跨站请求伪造。它生成一个隐藏的表单字段(防伪造标记),在提交表单时进行验证。
额外的数据操作
提供了IN和NotIN过滤器操作用于在WHERE过滤器中指定多个值。
DIAGRAM
对齐
支持定制用户手柄的位置。
端口增强
现在可以拖动端口来重新定位端口。
对称布局
对称布局是用于以圆形和对称方式排列图的自动布局。
标签交互
已经为标签提供了交互支持。他们可以被选中、拖动、调整大小和旋转。
AUTOCOMPLETE
搜索索引多栏弹出
现在可以区分多列AUTOCOMPLETE控件中的显示格式和搜索字段,允许用户在列表中搜索任意数量的字段,而无需修改所选的文本格式。
条码
EAN
条形码控制器现在支持EAN-8和EAN-13条形码。
计算
27个新的Excel公式
支持以下Excel公式:
ASINH,ATANH,AVERAGEIF,AVERAGEIFS,BASE,BESSELI,BESSELJ,BESSELK,BESSELY,COUNTIF,MMULT,MOD,NORMSDIST,NORMDIST,ODD,POWER,PV,RADIANS,RAND,ROUND,ROUNDUP,ROUNDDOWN,SECH,SUMPRODUCT,TEXT, VLOOKUP和STDEV。
下拉列表
服务器过滤
在搜索框中输入文本时,此功能将过滤数据源。过滤是基于包含来自整个数据源的匹配项。
服务器过滤:远程数据
服务器过滤:本地数据
文件管理器
支持鼠标选择
支持在文件资源管理器控件中使用鼠标管理文件/文件夹。
KANBAN
外部拖放
KANBAN控件现在支持与其他控件之间的拖放操作。
没有数据源的KANBAN列
KANBAN列可以在不绑定数据源的情况下显示。
滑块
添加按钮
添加了一个可以隐藏的按钮,允许增加和减少滑块的值。
甘特图
资源分配视图
甘特图控件支持资源分配视图。使用该视图,用户可以解释在同一日期发生的任务以及项目中资源的过度分配。
排序
现在可以根据行顺序显示具有序列号的任务。
多行选择
现在可以选择多行并执行缩进和负缩进操作。
列过滤
现在可以过滤甘特图控件中的特定字段或列。
展开/折叠记录
甘特图控制现在支持扩展和折叠特定的记录。
未发布 3D造型引擎3D ACIS Modeling 发布2018.1.0版本 3D ACIS® Modeler (ACIS) 是 Spatial 久负盛名的 3D 造型引擎,为超过 350 种客户应用程序所采用,全球应用量超过 150 万套。ACIS 采用面向对象的开放 C++ 架构,拥有强大的 3D 造型能力。ACIS 集成了线框、曲面和实体造型的功能,支持流形和非流形拓扑,具备非常丰富的几何运算集,因此非常适用于构建具有混合造型功能的 3D 应用程序。
ACIS不仅具备非常完善的 3D 造型功能,而且灵活性强,可满足各种应用程序要求。此外,3D Modeling 的 ACIS 扩展功能还能满足特定的应用需求,其中包括隐藏线去除、可变形造型、高级遮盖和特征去除。
试用、下载、了解更多产品信息请点击"咨询在线客服"
未发布 【教程】网络安全工具FileAudit安装指南 FileAudit可用于对Windows服务器上文件和文件夹的所有访问进行主动跟踪、审核、报告和警告。本文为大家介绍FileAudit的具体安装步骤。
英文和法文版本是相同的,并且与32位和64位平台兼容。
1、要启动FileAudit安装过程,请使用管理员帐户运行FileAudit_Setup.exe。
2、启动安装过程:
3、在随后的窗口中,单击 下一步>:
4、仔细阅读并接受最终用户许可协议,然后单击下一步> :
5、在随后的窗口中,输入您的信息,然后单击下一步> :
6、可根据需要更改安装文件夹:
7、在“安装类型”中,选中“Complete”复选框并点击下一步> :
8、点击 “安装”开始FileAudit安装:
9、向导将在FileAudit成功安装时报告。点击“完成 ”:
未发布 Red Carpet Subscriptions发布2017 v3,适用于Linux和macOS的新版本 Red Carpet Subscriptions贵宾订购版是综合通讯、安全和电子商务的组件包。贵宾订购版,在一个封包里给你任何东西:适用任何主流Internet协议的通讯组件、SSL 和 SSH 安全组件、S/MIME加密组件、数字证书(Digital Certificates)组件、信用卡交易处理(Credit Card Processing)组件、ZIP压缩组件、即时消息(Instant Messaging)组件、甚至电子商务(EDI)交易组件。
Red Carpet Subscription 2017 v3此次更新支持.NET Standard/ .NET Core,TLS 1.3,与OneDrive for Business和Wasabi云存储的集成,JSON安全性,并适用于Linux和macOS的新版本等。
重点
升级开发平台
在任何支持.NET Standard和.NET Core的平台上使用.NET Editions
使用PHP 7改进你的PHP应用程序。
使用Node.js 8.3.0和OpenSSL 1.1.0升级Node.js应用程序。
在Linux和macOS上使用IP*Works!IPC。
升级安全选项
升级云存储集成
升级企业适配器
使用WebDAV与BizTalk。
使用BlueSnap支付网关与电子支付积分器。
细节
支持.NET Standard
所有.NET版本现在包括.NET Standard 1.4、1.6和2.0库。这意味着你可以在任何支持.NET Standard,包括.NET Core、UWP、Mono、Xamarin(Android和iOS)的平台中使用/n software组件。所有.NET版本都包含在内,也是NuGet软件包的一部分。
支持TLS 1.3
.NET和Java Edition现在支持客户端和服务器组件中的TLS 1.3。该版本支持SHA-256、SHA-384和SHA-512签名算法以及DHE 2048、3072、4096、6144和8192组。更多的算法、功能和平台将在下一个版本中推出。
支持Wasabi云服务
这个新组件将一个接口嵌入到Wasabi服务中,为云存储集成商提供了另一个云存储选项。
JSON(JWS / JWE / JWT)安全性
支持PHP 7和7.1
充分利用最新版本的性能和代码升级。所有PHP版本现在支持PHP 7和7.1。
PowerShell服务器支持SSL Tunnels到SSL主机
新功能允许你保护旧版应用程序,支持以前的SSL版本,并具有新的TLS 1.2安全性。
未发布 TWAIN扫描识别工具Dynamic Web TWAIN发布v13.4,改进安装过程丨附下载 Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。然后用户可以编辑图像并将图像保存多种格式,用户可保存图像到远程数据库或者SharePoint。这个TWAIN控件还支持上传和处理本地图像。
Dynamic Web TWAIN v13.4更新内容
改进:
修复:
试用、下载、了解更多产品信息请点击"咨询在线客服"

未发布 扫描识别工具Dynamic Web TWAIN使用教程:建立一个“Hello World”扫描页面 Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。
本文教你Dynamic Web TWAIN中只需3个步骤在5分钟内创建一个Web扫描应用程序的方法!
步骤一:启动一个Web应用程序
1.1 将Dynamsoft的Resources文件夹复制到您的项目中
Resources文件夹通常在C:\Program Files (x86)\Dynamsoft\Dynamic Web TWAIN SDK {Version Number} {Trial}\
1.2 创建一个空的HTML页面
请将空的html页面与Resources文件夹放在一起,如下所示:
步骤二:将Dynamic Web TWAIN添加到HTML页面
2.1 包含两个Dynamsoft JS文件
2.2 添加一个Dynamic Web TWAIN容器
1 | <div id="dwtcontrolContainer"></div>
|
注意: “dwtcontrolContainer”是div的默认ID。如有必要,您可以在文件dynamsoft.webtwain.config.js中更改它。
步骤三:使用Dynamic Web TWAIN
3.1 添加一个扫描按钮和最小的脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <input type="button" value="Scan" onclick="AcquireImage();">
<script type="text/javascript" data-filtered="filtered">
var DWObject;
function Dynamsoft_OnReady(){
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
}
function AcquireImage(){
if(DWObject) {
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.SelectSource();
DWObject.OpenSource();
DWObject.AcquireImage();
}
}
</script>
|
3.2 查看完成的代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <title data-filtered="filtered">Hello World</title>
<script type="text/javascript" src="Resources/dynamsoft.webtwain.initiate.js" data-filtered="filtered"> </script>
<script type="text/javascript" src="Resources/dynamsoft.webtwain.config.js" data-filtered="filtered"> </script>
<input type="button" value="Scan" onclick="AcquireImage();">
<div id="dwtcontrolContainer"> </div>
<script type="text/javascript" data-filtered="filtered">
var DWObject;
function Dynamsoft_OnReady(){
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
}
function AcquireImage(){
if(DWObject) {
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.SelectSource();
DWObject.OpenSource();
DWObject.AcquireImage();
}
}
</script>
|
3.3 查看正在运行的扫描页面
如果你打开项目中的Hello World页面,它应该是这样的:
现在,您可以点击“扫描”按钮选择一个设备,如下所示:
注意:
- 选择来源对话框中只列出了TWAIN兼容设备。如果连接的扫描仪没有显示在列表中,请按照这篇文章排除故障。
- 如果您手边没有扫描仪,则可以安装虚拟扫描仪 - 由TWAIN工作组开发的扫描仪模拟器 - 用于测试目的。
扫描完成后,图像将显示在内置的Dynamic Web TWAIN查看器中:
如果您安装了Dynamic Web TWAIN的30天试用版,您可以在C:\Program Files (x86)\Dynamsoft\Dynamic Web TWAIN SDK {Version Number} {Trial}\Samples\Getting Started\获取完整的Hello World应用程序。
本次教程到此结束,希望能对Dynamic Web TWAIN的用户带来帮助,接下来还会有更多的相关教程,敬请期待!
未发布 MySQL的查询优化方法及原理详解丨附下载 关于MySQL的查询优化方法大家应该都知道一些:不使用NULL字段、为字段选择合适的数据类型、合理创建索引、不能使用SELECT *等等,但是你真的理解了这些优化方法了吗?它们的工作原理是什么?在实际运用中性能可以得到提升吗?其实未必。如何合理运用这些优化方法的前提是理解其中原理,希望本文能给你一定的帮助。
MySQL逻辑架构
如果能在头脑中构建一幅MySQL各组件之间如何协同工作的架构图,有助于深入理解MySQL服务器。下图展示了MySQL的逻辑架构图。
MySQL逻辑架构
MySQL逻辑架构整体分为三层,最上层为客户端层,并非MySQL所独有,诸如:连接处理、授权认证、安全等功能均在这一层处理。
MySQL大多数核心服务均在中间这一层,包括查询解析、分析、优化、缓存、内置函数(比如:时间、数学、加密等函数)。所有的跨存储引擎的功能也在这一层实现:存储过程、触发器、视图等。
最下层为存储引擎,其负责MySQL中的数据存储和提取。和Linux下的文件系统类似,每种存储引擎都有其优势和劣势。中间的服务层通过API与存储引擎通信,这些API接口屏蔽了不同存储引擎间的差异。
点击查看完整文章>>>