未发布 图像扫描工具包VintaSoftTwain.NET SDK v10.1发布,简化图像采集功能 VintaSoftTwain.NET SDK允许控制平台和手持扫描仪、网页和数码相机,以及.NET环境中的任何其它TWAIN设备的运作。
更新内容:
1、现在,从扫描仪中获取图像的功能可以很简单地添加到Web应用程序中:
Vintasoft.Twain.Web.WcfServices程序集可以在ASP.NET应用程序的服务器端使用,并允许创建一个用于从扫描程序中采集图像的WCF服务。
可以在ASP.NET MVC应用程序的服务器端使用Vintasoft.twain.Web.ApiController组件,并允许创建一个用于从扫描仪中进行图像采集的Web控制器。
用JavaScript编写的Vintasoft.Twain.js文件可以在ASP.NET应用程序的客户端使用,包括类和枚举,这简化了扫描仪的图像采集功能。
2、演示应用:
VintasoftWebTwainService - 新的控制台演示应用程序,演示了如何创建一个本地自我托管的Web服务来管理扫描仪。该Web服务是基于Web API控制器的。
AspNetMvcTwainDemos - 新的ASP.NET MVC演示应用程序,演示了如何从扫描仪中获取图像,处理所获取的图像,将获取的图像保存到本地文件或上传到HTTP(S)服务器上。该演示可以在任何浏览器(Chrome、Firefox、Edge、Internet Explorer、Opera)中使用,并使用本地Web服务与扫描仪进行通信。该演示使用了在VintasoftWebTwainService演示应用程序中实现的本地Web服务。
VintasoftWcfTwainService - 新的控制台演示应用程序,演示了如何创建一个本地的自我托管的Web服务来管理扫描仪。该Web服务是基于WCF服务的。
AspNetTwainDemos - 新的ASP.NET WebForms演示应用程序,演示了如何从扫描仪中获取图像,处理获取的图像,将获取的图像保存到本地文件或上传到HTTP(S)服务器上。该演示可以在任何浏览器(Chrome、Firefox、Edge、Internet Explorer、Opera)中使用,并使用本地Web服务与扫描仪进行通信。该演示使用了在VintasoftWcfTwainService演示应用程序中实现的本地Web服务。
未发布 先进的图表Web部件Nevron Chart for SharePoint发布v2016.1版本丨附下载

Nevron Chart for SharePoint是一个先进的图表Web部件,其能为您的SharePoint站点提供一整套的2D和3D图表类型,高度可自定义的轴,先进的数据分析功能,严密的数据集成和无与伦比的视觉效果。其组合了业内领先的Nevron Charting engine for ASP.NET以及Nevron Pivot Data Aggregation engine。这使得用户能在SharePoint环境中直观的完成复杂的透视图表的创建。
【Nevron Chart for SharePoint v2016.1最新版下载】
增强SharePoint的Nevron图表
新热图系列
这种独特的SharePoint图表类型可以将矩阵显示为高度值,作为从相关调色板中获取的颜色网格。 此外,热图系列可以显示一组交叉指定高程值的等高线(等值线)。
极地图的新亚型
极地图包含极地范围和极坐标矢量图子类型。 两个图表子类型允许您分别将一对极坐标可视化为范围或向量。
新表量表
表比例可以可视化特定类别中表示的系列的数据值。 表格行可以用一个系列名称注释,表格列可以用类别名称注释。 此功能对于堆叠和集群条形图非常有用。
价值调色板
柱形、面积、平滑区域、范围和高低级系列已被扩展,以支持称为值调色板的功能。 此功能允许您根据其值来对系列的数据点进行颜色编码,以使图表对用户更具视觉吸引力。
条形图
条形图类型支持直方图图子类型,具有用于控制直方图单元范围的许多选项。
轴秤
Axis Scales具有隐藏第一个/最后一个自动生成的标签的优点。
未发布 Xamarin for Visual Studio v4.5发布,重新设计Property Pages和Manifests Xamarin for Visual Studio 让开发者可以在Windows上用 Visual Studio 开发原生 iOS, Android 和Windows应用程序。Xamarin for Visual Studio提供了流畅的iOS和Android的API查询,让开发者专注于应用本身。更棒的是,开发者完全可以利用一切他熟悉的开发工具进行开发,从而保证项目的高效性和持续性。 V4.5版本中包含的功能:
重新设计Property Pages和Manifests
在Xamarin 4.5中,我们重新设计了Property Pages和Manifest编辑器。为了与Visual Studio本身和Visual Studio for Mac保持一致性,新的属性页面进行了重组和简化并支持高DPI显示。现在,你可以继续在Property Pages中编辑csproj选项,并Manifest编辑器显示manifest选项。
新的iOS项目属性页面
新的iOS属性页面提供存储在正确构建和运行项目所需的csproj文件中的所有选项。新的设计方式使之更简单有效。

更好的iOS Info.plist Manifest编辑器
我们的iOS Manifest编辑器(info.plist)现在是一个独立的编辑器,你可以通过双击info.plist文件来启动。它有一个体验非常好的UI,用户可以轻松浏览并保持熟悉的外观。

它包括APP版本、支持定向、状态栏样式、视觉资源、游戏中心、地图集成或背景模式等功能的编辑器,以及编辑文档类型,UTI和URL类型等高级功能。
新的Android项目属性页面
重新设计了Android项目选项页面!拥有你需要的所有选项的简化设计。

高级Android选项已经分组到单独的对话框中,你可以通过按“选项”页面上的“高级”按钮打开该对话框。
Bug修复
此版本包括以下修复程序:
修复iOS/tvOS/watchOS设备专用版本的调试问题。(4.5.0.440)
改进了Bonjour SSH。(4.5.0.440)
OpenGL游戏(Android)模板现在使用OpenTK-1.0。(4.5.0.440)
Android Archive Manager现在使用区域设置来显示存档日期。(4.5.0.440)
修复了二级iOS参考调试。(4.5.0.415)
创建F# Blank Android项目的错误。(4.5.0.415)
如果要禁用属性页上的控件,请确保工具提示可见。(4.5.0.415)
在检查“Build iTunes Package Archive (IPA)”之后,仍然无法创建IPA。(4.5.0.415)
Analyze-Xamarin Profiler选项在某些配置中被禁用。(4.5.0.415)
添加几个缺少的工具提示和Android属性页面的帮助链接。(4.5.0.415)
为tvOS / watchOS扩展项目添加Enable Bitcode选项。(4.5.0.415)
如果解决方案中包含共享项目,则无法打开iOS Manifest编辑器。(4.5.0.415)
无法在tvOS或watchOS项目中引用PCL。(4.5.0.387)
为iOS Manifest编辑器添加了工具提示。(4.5.0.387)
改进F#模板。(4.5.0.387)
未发布 【FAQ合集】TWAIN扫描识别工具Dynamic Web TWAIN的特性问题
慧都十四周年狂欢开启,Dynamic Web TWAIN终极让利7折特惠
限时一个月,马上咨询>>>
1. Dynamic Web TWAIN可以使用哪些操作系统?
Windows XP、Vista、7/8/10等
- IE 6-9:ActiveX
- IE 10-11:HTML5/ActiveX
- Edge:HTML5
- Chrome/Firefox 26-:NPAPI Plug-in (obsolete)
- Chrome/Firefox 27+:HTML5
Mac OS X 10.6及更高版本
- Chrome/Firefox 26-、Safari 6-:NPAPI Plug-in (obsolete)
- Chrome/Firefox 27+、Safari 7+:HTML5
Ubuntu 10+,Debian 8和Fedora 19+
2. Dynamic Web TWAIN是否支持Chrome或FireFox?
支持。Dynamic Web TWAIN插件版本可与旧版NPAPI的Chrome和Firefox版本兼容。Dynamic Web TWAIN 10引入了HTML5版本,可在Windows上的Chrome和Firefox V27 +上启用TWAIN扫描。
3. Dynamic Web TWAIN是否支持数据库?
支持。Dynamic Web TWAIN能够将图像文件保存到文件系统和数据库中。
4. Dynamic Web TWAIN是否支持SSL?
5.我可以使用FTP进行密码上传和下载吗?
是的,您可以使用FTPUserName属性和FTPPassword属性。
6. Dynamic Web TWAIN是否能够在类库(DLL)项目中运行?
不能。
7. Dynamic Web TWAIN是否支持条形码阅读器或OCR?
关于OCR,我们为您提供2个选项:
8.我可以扫描大量的文件吗?
随着IfAllowLocalCache启用,您能够扫描数千张图片,因为额外的图像将存在磁盘上。数据将被加密并存储为“C:\Documents and Settings\{User Name}\Application Data\Dynamsoft\cache”或“C:\WINDOWS\SysWOW64 {or system32}\Dynamsoft\DynamicWebTwain\ForChrome\cache”。扫描应用程序关闭时,缓存的数据将自动从磁盘中删除。
2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 LEADTOOLS HTML5 Medical Viewer(云PACS)本地部署指南 Leadtools 19总套包下载>>>
相关部署文件所在位置:C:\LEADTOOLS 19\Shortcuts\Medical Viewers\.NET Class Libraries\HTML5 Medical Viewer\Medical Web Viewer
部署步骤:
1.数据库以及PACS服务部署。
点击“01 - Run This First To Config 32-bit Demos”图标,进入数据库部署页面
提示保存成功后会进入PACS服务配置页面
配置完成后关闭即可
2.WEB服务相关部署。
2.1点击“02 - Run This Second to Run the Medical Web Viewer 32-bit Demo”,弹出配置窗口后点击“Fix”按钮
2.2点击Next按钮,下个界面继续点击Next
2.3确保在最后一个界面是Success提示,可以点击Test按钮对服务进行测试,确认无误后关闭该窗口,回到上一个窗口
2.4点击“Run Viewer”按钮即可在浏览器进行浏览,用户名和密码即为刚才在数据库设置时填写的字符。
2.5部署完成后可以在系统IIS管理器中看到相关的服务
未发布 解析企业使用开源软件的潜在风险 很多企业都选择使用开源软件(OSS)构建更加灵活的产品,但其中也存在潜在的风险,软件供应商和IoT制造商都有必要去了解一下隐藏在软件供应链中的风险。
已知风险
例如,犯罪分子就完全可以利用Apache Struts CVE-2017-5638漏洞来获取Equifax客户的个人资料。众所周知,Apache Struts是一种广泛使用的开源组件 – Web服务器的框架,它可以用于接收和提供公司内部系统中的商业数据。归根到底,还是因为这个开源组件所存在的漏洞以致于使其成为网络攻击的主要目标。
主要发现
根据Flexera的一份最新报告显示,在商业和IoT软件产品中所发现的代码有百分之五十都是与开源软件有关的。但调查显示只有37%的受访者表示曾获取并使用开源软件。而63%的公司说,他们并没有获取或使用开源软件,或者说他们根本就不知道有这种情况的存在。
并且据了解,目前基本没有人对开源软件的安全性负责:39%的受访者表示,在他们公司内部没有人会对开源软件的安全性负责,或者可以说他们压根就不知道应该是由谁来负责。
除此之外,开源软件的贡献者也不是遵循最佳实践:33%的受访者表示自己的公司曾为开源项目做出了贡献。但是,又有63%的受访者表示他们的公司压根并没有开源采购或使用政策,当然也有43%的受访者表示自己本身对开源项目也有做出贡献。
不管怎样,我们都不能忽视开源确实是一个明显的捷径。 Flexera产品管理副总裁Jeff Luszcz表示:“完全开源可获取的代码可以快速获得产品,这对于软件开发的快速节奏来说非常重要。” “然而,大多数软件工程师并没有在私下里去跟踪开源的使用情况,而且有绝大部分的软件高管都没有意识到其安全/合规风险方面存在一定差距。”
事实上,对于开源软件使用过程中的安全合规、许可等流程可能远比简单的拿来用要方便的多,但这些流程毫无疑问是必不可少的。
“开源软件的安全合规流程能够很好的保护产品和品牌声誉。但大多数软件和IoT厂商都没有意识到存在的问题,所以他们并没有保护自己和户,”Luszcz说,“对于暴露产品合规性和漏洞风险的供应商,还有那些压根就不知道他们运行开放源代码和其他第三方软件的客户,甚至可能是包含软件漏洞的客户 ,这些都是会危及到整个软件供应链。”
2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 ASP.NET Core 2加入了Razor页面特性 最近发布的ASP.NET Core 2.0,连同新发布的.NET Core 2和Entity Framework Core 2.0y,一并构成了.NET Core 2.0生态中的三元组。此发布给出了多个新特性和改进,其中包括通用性能的改进、Razor页面、新的开发模板以及更好的Azure Diagnostics支持。
让我们首先看一下Razor页面。Razor页面类似于标准的MVC视图,只是通过使用@Page指令标明自身为Razor页面。Microsoft现在考虑将Razor页面作为ASP.NET Core中构建Web应用UI的推荐方法,当然开发人员也可自由地选择最适合自己的方法。使用Razor页面编写的Web页面,无需经过控制器即可直接处理请求,正如在标准的ASP.NET MVC应用中那样。
转向ASP.NET Core 2平台的另一个好处是简化了对软件包的引用。在项目的.csproj文件中,仅需引用Microsoft.AspNetCore.All。这是一个Meta-package,它在简化了引用问题的同时,确保应用所需的所有库是可用的。而在发布Web应用时,只有应用所需的库才会与应用一并发布,避免了文件膨胀。另一个优点是Meta-package可使应用的启动速度更快,这是因为它使用了.NET Core Runtime Store,其中预编译了所有的软件包和文件。虽然这一Meta-package提供了一种便利的软件包引用方式,但是开发人员依然可以继续在Microsoft.AspNetCore.*中直接引用特定的软件包。
为了支持新的特性,ASP.NET Core 2扩充一些模板,它们来自于Razore页面(模板命名为“Web Application”)、Web API、基于MVC的Web应用、Angular、React.js和React.js& Redux等。所有这些模板也可以通过命令行使用,不必依赖于Visual Studio 2017。
在明确声明的情况下,Razor语言引擎提供对C# 7.1特性的支持。为此,需在项目文件中需添加该如下属性:latest。更改将在重新加载解决方案后生效。
规划将应用部署到Azure的开发人员将会看到,ASP.NET Core 2构建的应用不需作任何更改,就可使用Azure App Service。应用的部署可以在VS2017中执行,也可直接在Azure门户上执行。
未发布 轻松审计代码安全性,Windows 10有妙招 如果你是软件开发人员,又希望自己开发的软件安全性高一点,那么当前的Windows 10企业内部预览版(10.0.16253)中就有一个功能可以做到。
它的位置在“设置 – > Windows Defender – > Windows Defender安全中心 – >应用程序和浏览器控制 – >漏洞保护设置”中,你可以为整个系统或特定程序启用自定义漏洞利用设置。其中有很多不同的保护特性并且许多都可以在审计模式下打开。在审计模式下,它不是在出现情况时终止进程,而是将事件写入事件日志。对于管理员,这就意味着其会允许软件继续运行,同时能够使我们意识到这一情况是何时发生的。对于希望通过了解这些情况以此来改进产品的人来说,它其实是提供了一个启用安全功能的附加好处,即无需重新编译(在某些情况下),就能告诉你确切的程序代码在当它在运行时遇到问题的位置。在版本10.0.16253中,可以进行审计的保护特性包括:
任意代码保护 - 防止非图像支持的执行代码和代码页修改(例如VirtualAlloc / VirtualProtect创建/修改的代码)
阻止低完整性图像
阻止远程图像
阻止不受信任的字体
代码完整性守护者
禁用Win32k系统调用
不允许子进程
导出地址过滤 - 将功能修补到另一个功能的一个常见方法中的一个步骤
导入地址过滤 - 将功能修补到另一个功能的一个常见方法中的一个步骤
模拟执行
验证API调用(CallerCheck)
验证图像依赖完整性
验证堆栈完整性
要充分利用此功能,我们需要安装Windows Performance Toolkit。它是Windows SDK安装程序的安装选项之一。当您启用了您感兴趣的设置后,打开管理命令提示符并浏览到Windows Performance Toolkit目录(通常为Program Files(x86) Windows Kits {Version} Windows Performance Toolkit)。您可以通过运行以下两个命令(在替换文件名所需的任何路径之后)启动并开始收集上述漏洞保护设置的跟踪以及解析堆栈跟踪所需的数据: xperf - “PROC_THREAD + LOADER”-f“wdeg_klogger.etl”
xperf -start“WDEG” - “Microsoft-Windows-Security-Mitigations:0xFFFFFFFFFFFFFF:0xFF:'stack'”-f“wdeg_unmerged.etl”
在您运行任何想要收集的方案之后,您可以停止跟踪并将数据与以下内容合并(再次替换文件名所需的任何路径):
xperf -stop -stop“WDEG”-d“wdeg_merged.etl”
然后,您可以删除创建的前两个文件,因为此时您将拥有第三个所需的所有数据。您可以在Windows Performance Analyzer(WPA)中打开生成的etl文件,并查看数据。
您可以使用wpaPreset文件扩展名保存它,在WPA中加载数据,转到我的预设(在WPA的较新版本中的文件 – >窗口 – >我的存在),选择导入,浏览到保存预设的任何地方,选择它,并双击它以显示视图。另外,您还需要加载符号,以充分利用这一点。您可以在WPA中在File-> Configure Symbols下设置符号; 您需要将其指向msdl.microsoft.com/download/symbols上的Microsoft符号服务器以及您的符号服务器(或您没有符号服务器设置的符号文件的位置)。您可以在加载跟踪时自动配置WPA加载符号,但也可以通过转到文件 – >加载符号来手动加载符号。一旦完成,您将能够轻松地查看堆栈跟踪。它就会像下面这样:
以下是在创建上述过程中我为x64控制台应用程序编译的示例代码:
#include #include using namespace std;void* CreateCodeInVirtualMemory(BOOL writable)
{ BYTE code[3] = { 0x33, 0xc0, 0xc3 }; LPVOID result = VirtualAlloc(NULL, sizeof(code), MEM_COMMIT | MEM_RESERVE, writable ? PAGE_EXECUTE_READWRITE : PAGE_READWRITE); if (result)
{
memcpy(result, code, sizeof(code));
} else cout << "VirtualAllocEx failed with error " << GetLastError() << endl; return result;
}void CreateCodeInVirtualMemoryAndExecute(BOOL useWritableMemory)
{ LPTHREAD_START_ROUTINE addr = (LPTHREAD_START_ROUTINE)CreateCodeInVirtualMemory(useWritableMemory); if (addr)
{ DWORD result = addr(NULL);
cout << "Code at 0x" << hex << (void*)addr << " returned " << result << endl;
} else cout << "NULL address was not executed" << endl;
}void ExecuteIllegalMemory()
{
CreateCodeInVirtualMemoryAndExecute(FALSE);
}
void PrintOptions()
{
cout << "Enter one of the following options:" << endl;
cout << "1 - Execute Memory Not Marked As Executable" << endl;
cout << "2 - Create Code in Virtual Memory" << endl;
cout << "3 - Create Code in Virtual Memory and Execute" << endl;
cout << "0 - Exit" << endl;
}void DecisionLoop()
{ while (true)
{ int selection;
PrintOptions();
cin >> selection; switch (selection)
{ case 0: return; case 1:
ExecuteIllegalMemory(); break; case 2:
CreateCodeInVirtualMemory(TRUE); break; case 3:
CreateCodeInVirtualMemoryAndExecute(TRUE); break; default:
cout << "Invalid input" << endl;
}
}
}int main()
{
DecisionLoop(); return 0;
}
在这里我没有去对它的应用做更多的介绍,但我相信我的抛砖引玉一定能够让更多的人对这一功能产生兴趣。
对于在事件查看器中的应用程序和服务日志中找到的大多数内容,您也可以以相同的方式完成此类操作——单击特定日志的属性,它将具有Provider-Name-Parts / LogName形式的名称。您只需要在xperf命令中使用“Provider-Name-Parts”部分即可。