未找到

未发布 【FAQ合集】TWAIN扫描识别工具Dynamic Web TWAIN的编程代码问题
by Harriet666 keys 分享 1510217364852
Dynamic Web TWAIN中文介绍免费下载资源教程示例DEMO
Dynamsoft

1.如何获取黑白图像?

DWObject.OpenSource();
DWObject.IfShowUI = false;
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.PixelType = EnumDWT_PixelType.TWPT_BW; //Black - White 
image : EnumDWT_PixelType.TWPT_BW, GRAY image: 
EnumDWT_PixelType.TWPT_GRAY, RGB 
image: EnumDWT_PixelType.TWPT_RGB
DWObject.AcquireImage();

2.如何在没有用户界面的情况下运行?

function BeginScan(){
    DWObject.OpenSource();
    DWObject.IfShowUI = false; //set without user interface
    DWObject.IfDisableSourceAfterAcquire = true;

    DWObject.AcquireImage();
}

function DWObject_OnPostTransfer(){
    DWObject.SaveAsBMP("C:\\temp.bmp",0);
}

3.如何只扫描纸张的某一部分?

DWObject.SelectSource();
DWObject.OpenSource();
DWObject.IfShowUI = false;
//Set Image Layout
DWObject.Unit = EnumDWT_UnitType.TWUN_INCHES;
DWObject.SetImageLayout(0, 0, 5, 5);
DWObject.AcquireImage(); 

4.如何在不显示设备选择对话框的情况下选择设备?

DWObject.OpenSourceManager();

for(i = 0, i<=DWObject.SourceCount - 1,i++){
    if (DWObject.GetSourceNameItems(i) == "Specified device name")
        DWObject.SelectSourceByIndex (i);
}

//if can't find the specified source, it'll select default source
DWObject.AcquireImage(); 

5.如何在不使用UI获取图像时禁用进度指示器对话框?

DWObject.IfShowUI = false;
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.OpenSource();
DWObject.IfShowIndicator = false;
DWObject.AcquireImage();

6.如何分别设置水平和垂直分辨率?

DWObject.SelectSource();
DWObject.OpenSource();

//Set XRESOLUTION current value.
DWObject.Capability = 0x1118; //ICAP_XRESOLUTION
DWObject.CapType = 5; //TWON_ONEVALUE
DWObject.CapValue = 300;
if (DWObject.CapSet == false){
    alert( "Failed to set the x-resolution. " + DWObject.ErrorString);
}

//Set YRESOLUTION current value.
DWObject.Capability = 0x1119; //ICAP_YRESOLUTION
DWObject.CapType = 5; //TWON_ONEVALUE
DWObject.CapValue = 200;
if (DWObject.CapSet == false){
   alert( "Failed to set the y-resolution." + DWObject.ErrorString);
}

DWObject.AcquireImage();

7.如何上传到Web服务器?

DWObject = document.getElementById("dwtcontrolContainer");
//dwtcontrolContainer is the id of the Dynamic Web TWAIN on the page (An object or an embed).
function btnScan_onclick() 
{
DWObject.SelectSource();
DWObject.OpenSource();
DWObject.AcquireImage();
}
function btnUpload_onclick() 
{
var strActionPage;
var strHostIP;
var CurrentPathName = unescape(location.pathname); // get current PathName in 
plain ASCII 
var CurrentPath = CurrentPathName.substring(0, CurrentPathName.lastIndexOf("/") 
+ 1); 
strActionPage = CurrentPath + "SaveToFile.aspx"; //the ActionPage's file path
strHostIP = "localhost"; //The host's IP or name 
DWObject.HTTPPort = 80; 
DWObject.HTTPUploadThroughPost(strHostIP,0,strActionPage,"imageData.tif");
if (DWObject.ErrorCode != 0)
alert(DWObject.ErrorString);
else //succeed
alert("Image Uploaded successfully");
}

8.如何使用ADF?希望将每个文档保存在一个单独的文件中。

var iDocumentCounter =0;

function BeginScan(){
    DWObject.OpenSource();

    DWObject.IfShowUI = false;
    DWObject.IfDisableSourceAfterAcquire = true;
    if(DWObject.Duplex != TWDX_NONE)
        DWObject.IfDuplexEnabled = true; //enable duplex

DWObject.IfFeederEnabled = true;
    if (DWObject.IfFeederEnabled == true){
         DWObject.XferCount = -1;

         if(DWObject.IfFeederLoaded == True)
             DWObject.AcquireImage();
    }
}

function DWObject_OnPosttransfer(){
iDocumentCounter = iDocumentCounter + 1;

if(DWObject.SaveAsBMP("C:\\Image\\" + iDocumentCounter + ".bmp", 0) == false)
    alert( DWObject.ErrorString);
}

9.我如何使用SSL?

您可以使用IfSSL属性。下面的JavaScript示例将显示如何使用IfSSL属性。
function btnUpload_onclick() 
{
   DWObject.HTTPPort = 80; 
   DWObject.IfSSL = false; // if 80 is the port number of 
non-secure port

   /* 
   DWObject.HTTPPort = 443; 
   DWObject.IfSSL = true; // if 443 is the port number of secure 
port
   */

   DWObject.HTTPUploadThroughPost("127.0.0.1", 0, 
"/SaveToFile.php", "imageData.jpg");

   if (DWObject.ErrorCode != 0)
      alert(DWObject.ErrorString);
   else //succeed
     alert("Successful");
}

10.如何将新扫描的图像添加到现有的多页TIFF文件中?

function Scan_Click(){
   DWObject.AcquireImage();
}
function DWObject_OnPostTransfer(){
   DWObject.CloseSource();
   DWObject.IfTiffMultiPage = true;
   DWObject.SaveAsTIFF("SaveAsTIFF.tif", 0);
   if (DWObject.ErrorCode != 0)
      alert (DWObject.ErrorString);
   else //succeed
      alert ("Successful");
}

11.如何在保存之前旋转图像?

您可以使用RotateLeft方法和RotateRight方法。

12.如果缓冲区中有多个图像,如何查看指定的图像?

您可以通过更新API CurrentImageIndexInBuffer的值来查看指定的图像或浏览缓冲区中的所有图像。
function NextImage_Click(){
   if (DWObject.HowManyImagesInBuffer == 0) 
   
      alert ("There is no image in buffer");

   DWObject.CurrentImageIndexInBuffer += 1;
}

13.如何进行双面扫描?
function DuplexScan_Click(){
   DWObject.SelectSource();
   DWObject.OpenSource();
   DWObject.IfShowUI = false;
   DWObject.IfDuplexEnabled = true; //enable duplex
   DWObject.AcquireImage();
} 

14.如何以反转颜色扫描图像?

您可以使用PixelFlavor属性。

2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 备战2018!全球百家优质软件、控件厂商共创“折扣奇迹”
by Harriet666 keys 分享 1512367622376
慧都辞旧迎新,备战2018!现慧都科技联合全球百家优质软件、控件厂商共创“折扣奇迹”!界面控件DevExpress、文档工具Aspose、图表报表工具FastReport等优质厂商最低6折起!更多优惠等您来发现!
 
【活动时间】2017.12.5-2017.12.30
【活动内容】百家厂商6折起!
推荐厂商功能活动内容
DevExpress提供全球顶级.NET界面控件,中国独家代理全线产品单套6.7折,多套更优惠,查看详情>>>
Fastreport全线产品功能齐全、快速有效的报表解决方案在线订购年终回馈价6.5折!立即购买>>>
Aspose顶尖的文档处理工具Total版惊喜价6折!查看更多>>>
Kendo UI创建数据丰富的Web应用程序的最完整UI库  Telerik全线产品6.5折优惠,查看详情>>>
BCGSoft全球最优秀的MFC界面类库全线产品6.5折全年最低,立即查看>>>
Dynamsoft版本控制和事件跟踪软件应用程序领域的领先开发商全线产品6.7折终极回馈,立即查看>>>
VectorDraw优秀的矢量绘图控件,支持2D和3D图形全线产品6.6折冰点价!点击购买>>>
点击查看更多厂商

郑重承诺:慧都所售产品均为厂商授权的正版产品,请完全放心!

*想要了解更多优惠信息?请咨询慧都客服>>>

*本活动最终解释权归慧都科技所有
咨询热线: 400-700-1020(免费)  023-66090381

未发布 【示例教程】如何通过leadtools读取二维码中的中文
by Harriet666 keys 分享 1511255400131
在使用leadtools进行二维码识别的过程中,经常或碰到中文识别为乱码的情况,让人比较郁闷,本文教大家如何通过leadtools来读取二维码中的中文。
 
Leadtools 19总套包下载>>>
 
中文在编为二维码的时候,实际上是先按照一定的字符集编码被转换为了二进制编码,而我们如果需要正确的读取出二维码中的中文,就必须要确认编码字符集,如UTF8,UTF16,GB2312,GBK等等。
 
在确认了编码方式后,我们对通过BarcodeEngine 引擎读取出的BarcodeData ,不用value属性直接去获取它的对应字符串。因为这样默认是得到的按照ascii码编码来翻译出的字符串,自然会有各种乱码,leadtools提供了另一个方法GetData(),通过这个方法可以获取原始的byte[] 数据。然后按照对应的编码方式进行转换,即可得到对应的中文字符串。
 
下面的例子中是针对UTF8编码的中文二维码进行识别的代码,大家可以在编译以后,对文末的二维码进行识别。
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Forms; 
using Leadtools.Barcode; 
using Leadtools.ImageProcessing; 

public void BarcodeData_GetDataExample() 
{ 
string imageFileName = Path.Combine(LEAD_VARS.ImagesDir, "Barcode2.tif"); 

// Create a Barcode engine 
BarcodeEngine engine = new BarcodeEngine(); 

// Load the image 
using (RasterCodecs codecs = new RasterCodecs()) 
{ 
using (RasterImage image = codecs.Load(imageFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)) 
{ 
// Read the first QR barcode from the image 
BarcodeData data = engine.Reader.ReadBarcode(image, LogicalRectangle.Empty, BarcodeSymbology.QR); 

// Show the barcode data found (if any) 
if (data != null) 
{ 
Console.WriteLine("Raw data is:"); 
byte[] bytes = data.GetData(); 
if (bytes != null) 
{ 
string text = System.Text.Encoding.UTF8.GetString(bc); 
Console.WriteLine(text);
} 
else 
{ 
Console.WriteLine("Empty"); 
} 
} 
else 
{ 
Console.WriteLine("No barcode found"); 
} 
} 
} 
}

未发布 手机office办公——微软推出安卓手机端Office Mobile应用
by Harriet666 keys 分享 1493103861138

微软于4月19日在中国北京首次发布全新的安卓手机端Office Mobile应用。微软此次将 Word、Excel、PowerPoint三者完美合一,为中国的消费者带来完整的移动办公体验。

微软大中华区副总裁兼市场营销及运营总经理康容表示:“微软一直倾听用户的声音,最大化满足 Office 用户的需求。我们十分欣喜地宣布,此次微软中国将携手行业领先的合作伙伴——华为,小米,腾讯和百度在中国联合首发全新安卓手机端 Office Mobile 应用,为移动办公带来更便捷的创新体验。”

全新安卓手机端 Office Mobile 应用以更小的存储空间,为用户带来包括 Word、Excel、PowerPoint 的一站式完整办公体验。同时,它还具有 Office 熟悉的外观和品质,以及专为中国用户设计的本地化创新功能,进一步为用户带来更多便利。

更小的存储空间,完整的办公体验

全新安卓手机端 Office Mobile 应用将以“三合一”模式全面集成 Word、 Excel、PowerPoint 三个独立应用中所有功能,用户可随时随时地访问、查看和编辑 Word、Excel 和 PowerPoint 文档。这款全新安卓手机端 Office Mobile 应用体积更轻盈,不仅减少了应用程序对手机内存的占用,而且简化了用户在不同办公软件之间的切换操作。以更小的存储空间,为用户带来完整的办公体验。


(全新安卓手机端 Office Mobile 应用将 Word、Excel、PowerPoint 三者完美合一)

熟悉的跨设备办公体验,多种格式完美兼容

全新安卓手机端 Office Mobile 应用为用户带来熟悉的跨设备办公体验。当用户使用不同设备对文档进行浏览、快速编辑或添加注释时,所有文档的格式和内容都会与原始文档保持一致。Word 界面整洁美观,文字、图片、页眉、页脚和图表都保持原有格式;无论是幻灯片中的动画、SmartArt 图形和形状,还是 Excel 中的图表和数据,都能够高保真呈现,完美兼容。此外,用户还可以在全新安卓手机端 Office Mobile 应用中浏览 PDF 格式文件,将文档转存为 PDF 格式并进行分享。


(支持图表、动画、SmartArt 图形和形状等功能)

本地化创新功能,文件轻松共享

微软Office一直重视中国用户的声音,通过本地化功能创新,为中国用户带来更好的移动办公体验。全新安卓手机端 Office Mobile 应用支持多种分享形式。除了以链接形式邀请他人编辑或查看文档,还可作为附件一键共享到邮件以及微信、QQ 等社交软件,更好地迎合中国用户的使用习惯。


(融合本地化创新功能,支持文件分享到微信、QQ 等社交软件)

从今天开始,中国安卓手机用户就可以通过华为应用市场、小米应用商店、腾讯应用宝和百度手机助手下载并体验全新安卓手机端Office Mobile应用了。同时,也可以通过微软官网下载安装全新安卓端 Office Mobile 应用。

转自(Microsoft


office 365

未发布 Xmanager Enterprise网络通讯工具更新合集
by Harriet666 keys 分享 1508924928131
Xmanager Enterprise是完整的网络连接套件,它带有一个高性能PC X服务器,支持OpenGL(GLX)、3d硬件加速、安全终端模拟器、文件传输客户端和LPD打印机服务器。Xmanager 
Enterprise 4使3d X应用程序运行得更快,通过SSH和TELNET来提供安全的远程终端访问,通过SFTP/FTP进行方便的文件传输,使用LPD在本地打印远程文件等。
 
Xmanager Enterprise v5.1243下载>>>
 
Xmanager Enterprise v5.1243更新:
  • 修复:[Xmanager]全屏启动时屏幕闪烁
  • 修复:[Xshell]自动更新会错误地显示用户正在使用最新版本
  • 修复:[Xshell]终端复位时,光标不复位
  • 修复:[Xshell]重命名选项卡有时将名称应用于其他选项卡
  • 修复:[Xshell]反向视频终端转义序列被忽略
  • 修复:[Xshell]当选择新窗口中打开时,将-newtab选项中的新选项卡名称应用于现有选项卡
  • 修复:[Xftp]从连接的会话中打开新终端时,系统将提示用户输入密码
  • 修复:[Xftp]从会话的上下文菜单中调用Xftp始终默认为TCP 22
  • 修复:[Xlpd]资源清理

Xmanager是市场领先的PC X服务器,它能够带来Windows平台下强力的虚拟应用技术。使用Xmanager,能够使安装在远程的基于UNIX系统的X应用程序与一般的Windows应用程序
完全一样。它提供了一个强大的会话管理控制台、易于使用的X应用程序启动器、X服务器概要文件管理工具、SSH模块和用于安全访问的远程高性能PC X服务器及虚拟化的UNIX/Linux
环境。

Xmanager v5.1056下载>>>

Xmanager v5.1056更新:
  • 修复:[Xmanager]全屏启动时屏幕闪烁

Xshell是一个功能强大的终端模拟器,支持SSH、SFTP、TELNET、RLOGIN和SERIAL。它提供业界领先无法替代的性能和特性集。它有许多对企业用户有用的特性,包括:分页式环境
、动态端口转发、自定义键映射、用户定义按钮、VB脚本以及显示2字节字符和支持国际语言的UNICODE终端。
 
Xshell v5.1333下载>>>

Xshell v5.1333更新:
  • 修复:[Xshell]自动更新会错误地显示用户正在使用最新版本
  • 修复:[Xshell]终端复位时,光标不复位
  • 修复:[Xshell]重命名选项卡有时将名称应用于其他选项卡
  • 修复:[Xshell]反向视频终端转义序列被忽略
  • 修复:[Xshell]当选择新窗口中打开时,将-newtab选项中的新选项卡名称应用于现有选项卡

Xftp是一个灵活和轻量级的SFTP / FTP客户端,它主要用于为用户提供通过网络安全的传输文件。它提供了许多强大的功能,比如直接编辑、多窗格、文件夹同步、支持FXP、服务器之
间传输以及集成第三方编辑器。在处理远程文件方面Xftp将为你节省时间和精力。 对于家庭和学校的用户来说,Xftp是免费的。具体情况可参阅家庭和学校用户免费使用许可协议条款和
条件。

Xftp v5.1229下载>>>
 
Xftp v5.1229更新:
  • 修复:[Xftp]从连接的会话中打开新终端时,系统将提示用户输入密码
  • 修复:[Xftp]从会话的上下文菜单中调用Xftp始终默认为TCP 22

Xlpd是一个用于Windows系统的简单的行式打印机后台程序(LDP)和打印作业管理工具。它通过LPD协议从远程服务器接收打印任务并把该打印任务发送至本地打印机。LPD是一个支
持多种操作系统的标准的打印协议,支持包括UNIX、Solaris和Linux等系统。
 
Xlpd v5.1231下载>>>
 
Xlpd v5.1231更新:
  • 修复:[Xlpd]资源清理
未发布 矢量图形引擎库VectorDraw Developer Framework v7.7011.0.1发布
by Harriet666 keys 分享 1490841123648

VectorDraw Developer Framework

VectorDraw Developer Framework(VDF)是一款构建2D、3D图形并用于应用程序可视化的矢量图形引擎库。有了VDF提供的功能,您可以轻松地创建、编辑、管理、输出、输入和打印2D和3D图形文件。该库还支持许多矢量和栅格输入和输出格式,包括本地PDF和SVG导出。

VectorDraw Developer Framework(VDF)更新至v7.7011.0.1,新版本针对提出的需求和bug做了调整和优化。

VectorDraw Developer Framework点击下载>>>

WebJS

新增需求

版本需求

7.7011.0.1    

70001006 支持webgl渲染模式的webgl图像
70001016 支持webgl节剪辑
70001019 支持使用scriptCommand hatch绘制阴影边框                                  
70001024 使用鼠标进行缩放
70001029 实体选择回调

Converter

新增需求

版本需求
7.7011.0.1    70001015 具有相同名称的vdXproperties导出不正确                                      

漏洞

版本漏洞
7.7011.0.1    70001009 DXF代理对象读取出错
70001020 某些DWF文件未正确打开   
70001025 DGN Xrefs的问题
70001033 Layout paper未正确初始化                                                               

vdDXF

漏洞

版本漏洞
7.7011.0.1    70001011 HANDLE类型的XProperty在DXF中未正确导出                              

Engine

新增需求

版本需求
7.7011.0.1    70001008 改进ClearEraseItems方法的速度
70001012 MergeSelection方法用于传递对象的GUIDs                                     
70001027 虚拟机中的OpenGL问题
70001034 能够设置UCS图标字母的颜色

漏洞

版本漏洞
7.7011.0.1    70001007 当文本具有斜角时,EditText和AddText命令不会正确显示光标           
70001010 点上的多点折线未正确显示
70001013 Inserts Inside Blocks层是处于ON状态时仍不可见
70001014 图层组和滤镜在删除后仍会保存到DXF中
70001017 图像在nonused Block中使用时会被删除
70001018 线型折线显示不正确
70001021 RenderToGraphics和RenderToDC会清除目标图形上下文的背景
70001022 尺寸对象未正确导入PDF
70001026 在vdraw Idle中很少会随机出现exeption
70001030 Bhatch命令为创建的polyhatch添加白色作为fillcolor
70001031 用户选择部分文字的拉伸命令会出现错误
70001032 vdMtext对象没有对齐

 【本文作者慧都Elyn

未发布 UserLock教程:限制用户仅从特定的机器进行连接
by Harriet666 keys 分享 1507703032972
IS Decisions公司旗下的UserLock为企业和组织提供了实施网络访问安全以及优化工作站使用的一系列有效方法。它通过阻挠来自于外部或者内部的恶意访问事件为Windows网络提供了真正的访问安全。(重要推荐:UserLock已加入在线订购,点击购买!

UserLock免费下载试用>>>


UserLock可以为受保护的帐户(用户,组织或单位)定义机器列表。您可以限制用户仅从特定机器连接以打开工作站或终端会话。
 
本文将为您分布演示如何为用户帐户定义规则,以便授权他们仅从特定机器打开工作站或终端会话。
 
一、点击菜单中的“受保护的帐户”。如果已存在则可以通过双击相应的行来打开所需的用户帐户。否则,您可以为目标组创建受保护的帐户。
 
二、显示“工作站限制”选项。要定义该用户可以连接到网络的机器,请将“下列工作站/终端”下拉列表切换到“授权”。
 
三、您可以以两种不同的方式分配授权机器。
如果您知道机器的确切名称,请单击“添加名称”,然后输入机器名称。选择“交互式”会话类型。点击“确定”。
 
四、或者您可以单击“添加计算机”,其中将显示“Active Directory”对话框以选择目标计算机。键入计算机名称的开头,然后单击“检查名称”,或者如果您愿意,启动“高级”模式。
 
选择分配给用户的机器,然后单击“确定”。
 
再次点击“确定”。
 
五、最后就是受此规则影响的会话类型的选择。检查“交互”会话类型。点击“确定”。
 
六、通过点击“快速访问”面板中的“确定”来验证工作站限制。
用户“ab”现在仅被授权从计算机“WKS005”打开工作站或终端会话。所有来自其他机器的连接尝试将被UserLock拒绝。

【慧都十四周年庆预热开启!全场满额送七级豪礼,AppleMac笔记本电脑、iwatch、iPad等您来拿!】

活动时间:10月1日-10月31日

未发布 NET图像处理库ImageGear for .NET更新至v23.4,添加增强版的数字签名技术
by Harriet666 keys 分享 1509957540096
文档图像解决方案的领导者Accusoft发布最新版本的图像查看和处理工具包ImageGear for .NET v23.4,新版本专注于PDF文件的数字签名功能。数字签名使用特定的安全协议来确保安全性。该软件可以验证签署方的身份,确认该文件没有变更并签署一份具有法律效应的协议。
 
ImageGear for .NET最新版下载>>>
 
ImageGear .NET v23.4中的新增功能
  • 添加了新的API,支持用批准签名对PDF文档进行数字签名。
  • 支持验证带有认证和批准签名的PDF文档。
ImageGear for .NET是一款图形图像处理控件,具有扫描,压缩,浏览、添加注释,打印,图像编辑,OCR以及PDF和矢量图像支持,使开发人员可以快速地开发出图像处理程序,可用于.NET Framework2.0、3.0、3.5、4.0,ASP.NET,WPF,SilverLight,DirectX 10和Direct3D 10。支持超过100种图片格式,包含:TIFF, JPEG, CAD, Vector, 3D PDF, PDF/A, PS等。

2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 MailBee.NET Objects发送电子邮件(SMTP)教程一:使用SMTP服务器发送消息
by Harriet666 keys 分享 1493280142680
MailBee.NET Objects介绍和试用点击查看>>>
 
Smtp对象提供了多种方法和属性来调整优化发送消息的过程。可以创建一个新的Smtp对象实例,如下所示:
C#:

Smtp mailer = new Smtp();

VB.NET:

Dim mailer As New Smtp()
 
如果SMTP服务器不需要任何身份验证,那么指定的主机名或它的IP地址就足以连接到此SMTP服务器。
C#:

mailer.SmtpServers.Add("mail.domain.com");

VB.NET:

mailer.SmtpServers.Add("mail.domain.com")
 
然而,大多数服务器现在要求用户对自己进行身份验证(例如,如果要通过此服务器将电子邮件发送给外部收件人,则必须拥有有效的帐户)。要指定你的帐户凭据,请使用以下代码:
C#:
mailer.SmtpServers.Add("mail.domain.com", "jdoe", "secret");

VB.NET:

mailer.SmtpServers.Add("mail.domain.com", "jdoe", "secret")
 
根据服务器设置,你可能需要输入整个电子邮件地址,而不仅仅是一个帐户名称(例如,在某些情况下为jdoe@domain.com或domain.com \ jdoe)。
某些SMTP服务器要求客户端进行身份验证,但不支持任何SMTP命令。这些服务器依赖于同一个客户端的最近POP3连接的认证结果(即相同的IP地址)。因为POP3和SMTP服务器通常共享相同的用户帐户数据库。
在发送消息之前,你应该确定内容。例如:
C#:

mailer.Message.From.AsString = "jdoe@domain.com";

mailer.Message.To.AsString = "bill@domain.com";

mailer.Message.Subject = "Hi";

mailer.Message.BodyPlainText = "Hello Bill";


mailer.Message.From.AsString = "John Doe ";

mailer.Message.To.AsString = "Bill  (Company Inc), Kathy ";

mailer.Message.Subject = "The document";

mailer.Message.BodyHtmlText = "The document body";


mailer.Message.From.Email = "jdoe@domain.com";

mailer.Message.From.DisplayName = "John Doe";

mailer.Message.To.AsString = "Kathy ";

mailer.Message.Cc.Add("bill@domain.com", "Bill Smith");

mailer.Message.Subject = "News";

mailer.Message.BodyPlainText = "News body";
 
VB.NET:

mailer.Message.From.AsString = "jdoe@domain.com"

mailer.Message.To.AsString = "bill@domain.com"

mailer.Message.Subject = "Hi"

mailer.Message.BodyPlainText = "Hello Bill"



mailer.Message.From.AsString = "John Doe "

mailer.Message.To.AsString = "Bill  (Company Inc), Kathy "

mailer.Message.Subject = "The document"

mailer.Message.BodyHtmlText = "The document body"



mailer.Message.From.Email = "jdoe@domain.com"

mailer.Message.From.DisplayName = "John Doe"

mailer.Message.To.AsString = "Kathy "

mailer.Message.Cc.Add("bill@domain.com", "Bill Smith")

mailer.Message.Subject = "News"

mailer.Message.BodyPlainText = "News body"
 
内容完成后,你就可以点击发送了。
C#:

mailer.Send();

VB.NET:

mailer.Send()
未发布 Edraw Office Viewer component教程(二):将Excel嵌入VB 6并使之自动化
by Harriet666 keys 分享 1494475186338
Edraw office viewer component对于开发人员来说是一个将Microsoft Excel电子表格嵌入到vb.net应用程序中的简单可靠的解决方案。
 
使用Edraw office viewer component,vb开发人员可以轻松地将一个现有的Excel电子表格嵌入到表单中,然后进行自动化。在加载表单时,开发人员可以使用Open方法从硬盘驱动器或服务器中加载* .xls、* .xlsx、* .xslm或* .cvs文件,并在窗口的某个区域中打开。Excel文件可以是只读、完全编辑或禁止保存等状态。开发人员还可以使用excel组件轻松实现excel自动化。
 
本文将演示如何逐步将Excel嵌入到VB中。如果你没有officeviewer.ocx文件,请先安装。

Office viewer component - 支持Word、Excel、PowerPoint、Visio和Project的vb6、vb.net项目

在VB 6中嵌入Excel组件

启动Visual Basic并创建一个新的标准项目。默认情况下创建Form1。
在“工具箱”面板中,右键单击空白区域。然后单击Component...
 
在弹出的对话框中,查看Edraw Office Viewer Component。
 
单击确定按钮。
Office Viewer Component便已添加到“工具栏”窗口中。

切换到VB 6窗口,然后添加组件。

该组件包括许多自定义Excel窗口的方法、事件和属性。
开发人员可以使用以下代码在Form_Load事件中打开一个excel文件。
Private Sub Form_Load()
EDOffice1.OpenFileDialog'EDOffice1.OpenWord 
“d:\ test.xlsx” 
'EDOffice1.Open“d:\ test.xls”,“Excel.Application” 
End Sub

为了保护Excel工作表不被最终用户修改,开发人员需要在DocumentOpened事件中添加以下代码。
Private Sub EDOffice_DocumentOpened()
EDOffice1.ProtectDoc 1'XlProtectTypeNormal 
End Sub
 
一些包含excel自动化的方法可用于创建或修改Excel数据。
bool ExcelAddWorkSheet(long Index); 
bool ExcelDeleteWorkSheet(long Index); 
bool ExcelActivateWorkSheet(long Index); 
长ExcelGetWorkSheetCount(); 
bool ExcelSetCellValue(long Column,long Row,BSTR Value); 
BSTR ExcelGetCellValue(长列,长行); 
bool ExcelSetRowHeight(long Row,double Height); 
bool ExcelSetColumnWidth(long Column,double Width); 
afx_msg bool ExcelDeleteRow(long Row); 
bool ExcelDeleteColumn(long Column); 
bool ExcelInsertRow(long Row); 
bool ExcelInsertColumn(long Column); 
bool ExcelInsertPageBreakInRow(long Row); 
bool ExcelInsertPageBreakInColumn(long Column); 
bool ExcelCopyToClipboard(); 
bool ExcelPasteStringToWorksheet(BSTR bstText);

 

使用Visual Basic自动化操作Excel

单击项目,然后单击引用。将显示“引用”对话框。向下滚动列表,找到Microsoft Excel object库(Microsoft Excel xx.x Object库),然后选择引用Excel。如果列表中没有正确的Excel Object库,请确认你是否安装了合适的Excel版本。
单击“确定”关闭“引用”对话框。
将CommandButton添加到Form1。
在Form1的代码窗口中,插入以下代码:
Private Sub Command1_Click()
 
Dim oXL As Excel.Application
Set oXL = EDOffice1.GetApplication()
Dim oWB As Excel.Workbook
Set oWB = EDOffice1.ActiveDocument()
Dim oSheet As Excel.Worksheet
Dim oRng As Excel.Range
Set oSheet = oWB.ActiveSheet
oSheet.Cells(1, 1).Value = "First Name"
oSheet.Cells(1, 2).Value = "Last Name"
oSheet.Cells(1, 3).Value = "Full Name"
oSheet.Cells(1, 4).Value = "Salary"
' Format A1:D1 as bold, vertical alignment = center.
With oSheet.Range("A1", "D1")
.Font.Bold = True
.VerticalAlignment = xlVAlignCenter
End With
' Create an array to set multiple values at once.
Dim saNames(5, 2) As String
saNames(0, 0) = "John"
saNames(0, 1) = "Smith"
saNames(1, 0) = "Tom"
saNames(1, 1) = "Brown"
saNames(2, 0) = "Sue"
saNames(2, 1) = "Thomas"
saNames(3, 0) = "Jane"
saNames(3, 1) = "Jones"
saNames(4, 0) = "Adam"
saNames(4, 1) = "Johnson"
' Fill A2:B6 with an array of values (First and Last Names).
oSheet.Range("A2", "B6").Value = saNames
' Fill C2:C6 with a relative formula (=A2 & " " & B2).
Set oRng = oSheet.Range("C2", "C6")
oRng.Formula = "=A2 & "" "" & B2"
' Fill D2:D6 with a formula(=RAND()*100000) and apply format.
Set oRng = oSheet.Range("D2", "D6")
oRng.Formula = "=RAND()*100000"
oRng.NumberFormat = "$0.00"
' AutoFit columns A:D.
Set oRng = oSheet.Range("A1", "D1")
oRng.EntireColumn.AutoFit
oXL.UserControl = True
End Sub
 
按F5运行项目。Excel将自动填充excel单元格。
自动化Excel时要注意的一点是Excel Macro Recorder。它仍然在Word 2007中,但隐藏在开发者功能区栏。
 
以上就是本次教程的全部内容,接下来会有更多相关教程,敬请关注!您也可以在评论者留下你的经验和建议。

 近期热门 - 点击最多
  1. FastAPI+SQLModel+PostgreSQL+React+Vite全栈项目文件结构说明环境搭建与初始化指南
  2. React结合vite使用vue3,在纯typescript的react hooks中使用vue
  3. valtio基于Proxy代理比redux\zustand更简洁的react状态管理库
  4. React Native为http网络请求添加timeout超时异常处理: 用XMLHttpRequest替换fetch发送的区别
  5. React Native使用fetch发送http登陆验证请求失败:无法读取set-cookie并显示network request failed
  6. 克服Redux的缺点在React/Native中使用消息队列,pubsub-js更加简洁的组件间通信和状态传递方法
  7. Springboot+Gradle+Mysql+Jpa最简单实例教程
  8. SpringBoot+Spring6入门指南: 使用命令行快速搭建restful web api模板
  9. 如何通过 winax 的 ActiveXObject 或 Excel.Application 往 excel 中插入一张图片
  10. node.js用activex/com+自动化读写excel时查询接口、参数的调试方法

  全端社区 - 最新回复
  1. FastAPI+SQLModel+PostgreSQL+React+Vite全栈项目文件结构说明环境搭建与初始化指南
  2. Node.js 打印vite react+go项目目录树
  3. valtio基于Proxy代理比redux\zustand更简洁的react状态管理库
  4. Windows与Mac通过git ssh和rsync实现文件共享互传
  5. Windows与Mac通过git ssh和scp实现文件共享互传
  6. React结合vite使用vue3,在纯typescript的react hooks中使用vue
  7. 使用PubSub-JS时ReactNative在后台运行一段时间唤醒后,组件无法scribe到publish的事件,typescript实现一个事件订阅发布组件
  8. React Native为http网络请求添加timeout超时异常处理: 用XMLHttpRequest替换fetch发送的区别
  9. ReactNative获取Android/iOS的MAC/IP地址: react-native-device-info模块的安装与使用
  10. React Native使用fetch发送http登陆验证请求失败:无法读取set-cookie并显示network request failed

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA