admin

用户名:admin

注册于:2017-11-09

主题数: 359     回贴数: 449

网站:

介绍:

最后活动于3 天前
回复了主题  › VS生成com组件ocx

添加属性

属性名是对外显示的接口名, 变量名会在程序里自动生成的名字, 可以相同也可以不同, 通知函数可以不写,需要的话可以写

«  3 天前
创建了主题  › VS生成com组件ocx

利用visual studio和c++来生成ocx控件

以下测试参考帖子:https://blog.csdn.net/longhuahaha/article/details/8556964

vs2015关键步骤如下:

上面的帖子里说的很详细了, 为了生成一个干净的ocx, 那么在

«  3 天前
回复了主题  › vs生成dll的学习

那么是不是可以直接把上面生成的Thraddll中多线程函数和CallbackDll联合起来使用呢?

当然也是可以的, 在aardio中示例如下:

aar里将两个dll进行关联, 然后就可以愉快的进行使用了.

import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=507;bottom=346) winform.add( button={cls="button";text="Button";left
«  6 天前
回复了主题  › vs生成dll的学习

C++编写dll : 如何生成dll中的回调函数

首先在cpp中声明个函数指针

设置外部函数指针给上面的函数指针

使用刚刚重置后的函数

CPP代码如下:

#include "stdafx.h" int (*fcallback)(int data); voi
«  6 天前
创建了主题  › inet.whttp长时间多线程采集后程序就挂了的解决办法

感谢: fish 分享

虽然没测试, 收藏备用先

«  7 天前
创建了主题  › 获取蓝奏云有密码和无密码分享的直连地址

感谢:xauto 分享代码

import web.json; import string.html; import web.rest.client; namespace lanzou; class client {     ctor(...) {         this = ..web.re
«  14 天前
回复了主题  › vs生成dll的学习

c++编写的dll中使用多线程

需要用_beginthreadex 和_endthreadex来创建和销毁线程

用上面函数产生的句柄, 并不会自动销毁, 需要最后手动CloseHandle下.

使用上面函数需要引用 process.h 头文件


下面我再dll中声明一个函数, 里面无限循环一个变量进行自加, 另外一个函数用来获取这个变量当前值. C++的代码如下:

#include "stdafx.h" #include "pro
«  14 天前
创建了主题  › ch372USB通信 import console;  var dll = raw.loadDll("/CH37xWR.dll",,"cdecl"); usbInit = dll.api("usbInit","bool(INT ulIndex)" ); usbClose = dll.api("usbClose","bool(void)" ); usbWrite = dll.api("usbWrite","INT(INT unEndPoint,pointer pSendBytes,INT unSendLength)" ); usbRead = 
«  18 天前
回复了主题  › 记ProEssentials图表控件在aardio中的使用

科学图表实时显示第三种方式:

var F6 = function(){     //! Chart fills 100 points autoscaling x axis is it //! is filled.  Once 100 point have been passed, the //! chart then acts as a strip chart.   Pesgo1.setSubsets ( 1)   Pesgo1.setPoints ( 100) // Set Manual Y
«  2020-08-30
回复了主题  › 记ProEssentials图表控件在aardio中的使用

科学图表实时连续数据方式二:

var F5 = function(){     //! Chart fills 100 points autoscaling x axis is it //! is filled.  Once 100 point have been passed, the //! chart then acts as a strip chart.   Pesgo1.setSubsets ( 1)   Pesgo1.setPoints ( 100) // Set Manual Y scal
«  2020-08-30
回复了主题  › 记ProEssentials图表控件在aardio中的使用

科学图表的实时显示:(方式一)

下面的定时器里我用了REINITIALIZE_RESETIMAGE代替官方demo提供的RESET_IMAGE参数, 这样就没问题了,但是根据实际情况考虑的话, 每次更新数据后只需要刷新图片IMAGE即可, 而不需要REInitialize初始化下整个图表.....

这个问题先放一放, 继续下面的实验

var F4 = function(){     //! Chart fills 100 points autoscaling x axis i
«  2020-08-29
回复了主题  › 记ProEssentials图表控件在aardio中的使用

var F3 = function(){     CreateSimpleGraph();     // Create 4 separate axes and then overlap in two groups //   Pesgo1.setMultiAxesSubsets(0, 1 )// 1 subse
«  2020-08-29
回复了主题  › 记ProEssentials图表控件在aardio中的使用

var F2 = function(){     CreateSimpleGraph(); // Create 4 separate axes and then overlap all //   Pesgo1.setMultiAxesSubsets(0, 1 )// 1 subset on first ax
«  2020-08-29
回复了主题  › 记ProEssentials图表控件在aardio中的使用

var F1 = function(){ CreateSimpleGraph(); // Create MultiAxes //   Pesgo1.setMultiAxesSubsets(0, 2)   Pesgo1.setMultiAxesSubsets(1, 2)   Pesgo1.setMultiA
«  2020-08-29
回复了主题  › 记ProEssentials图表控件在aardio中的使用

科学图表 scientific , 指示控件名变了,其他同理

/*基础创建函数{{*/  var CreateSimpleGraph = function(){ // Enable middle mouse dragging //   Pesgo1.setMouseDraggingX ( tru
«  2020-08-29
回复了主题  › 记ProEssentials图表控件在aardio中的使用

再来个实时动态显示的例子:

var F8 = function(){ // No Shadows //   Pego1.setDataShadows ( PEDS_NONE) // No Flicker //   Pego1.setPrepareImages ( true)   Pego1.s
«  2020-08-28
回复了主题  › 记ProEssentials图表控件在aardio中的使用

记录一个大量数据时候的处理:

ProEssentials官方提供了一种处理大量数据的方法, 可以不用每次去设置YData值, 一次性给图表数据

这个方式需要调用它们提供的PEGRP32E.DLL中的函数PEvset

aardio中调用示例如下:

import win.ui; /*DSG{{*
«  2020-08-28
创建了主题  › 记ProEssentials图表控件在aardio中的使用

这个图表控件在科学计算、工业控制、金融统计等行业中有着大量的实际应用, 非常Nice

就是我经常使用的实时曲线就有多种模式选择 

支持3d图, 柱状图,饼图, 线图, 极点图,金融图,组合图, 可以任意组合实现不同效果

官方提供的示例非常详细,基本包含了所有的功能演示

此控件可以免注册调用,用com.lite()即可,省去注册时候权限问题的麻烦。

«  2020-08-25
回复了主题  › 记EjunGrid表格控件在aardio中调用记录

回复#1 @lcj21 :

网上搜下, 我也是在网上找的.

«  2020-08-24
回复了主题  › 利用cwinstr.ocx操作GPIB设备

刚好有了可以测试的设备, 测试了下这个, 还不错, 比直接调用gpib.dll要好用很多, 因为很多属性和方法这个ocx已经又重新进行了封装,用起来更方便了.

常用的功能如下:

import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=434;bottom=234) winform.add( button={cls="button";text="about";left=6;top=207;right=
«  2020-08-22
创建了主题  › 记EjunGrid表格控件在aardio中调用记录

前面讲过FlexCell表格控件的使用, 还封装了用户库.

这个和flexCell类似, 不过它的树形表格用起来比较方便, 目前还用不到, 特别记录一下

这个控件支持下拉,按钮,日期,spin数字输入,单选,复选,财务格式

包含了三种模式, 普通表格/树形表格/工作薄模式.

«  2020-08-16
创建了主题  › 利用AddFontResource给系统安装字体文件

好吧,看了网上的一些教程, 成功了?


如题:

//RUNAS// import console;  import gdi import win.reg; import fsys; installFont = function(path){ var fontName = fsys.getFileName(path); var fontD
«  2020-08-06
创建了主题  › PLUS实现动态精灵动画

感谢: 撒旦微笑 分享源码

动态精灵动画

//精灵动画 import win.ui; /*DSG{{*/ var winform = win.form(text="鼠标放到图像上显示动画";right=724;botto
«  2020-08-06
创建了主题  › 释放已加载的dll占用

有人问: 如果一个工程里有mainform和一个a.aardio界面, a界面里用raw.loaddll加载了dll, 那么怎么才能在关闭a窗口的时候释放掉这个dll的占用?


感谢/ZGMF-X-20A/.提供的答案

import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=473;bottom=279) winform.add() /*}}*/ var dll = raw.
«  2020-08-02
创建了主题  › 利用cwinstr.ocx操作GPIB设备

import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=434;bottom=234) winform.add( button={cls="button";text="about";left=6;top=207;righ
«  2020-07-27
创建了主题  › 再发一个串口控件sport.dll封装库和使用示例

提醒下:

aardio扩展库里已经有了串口通信用的的sio库 ,目前市面上的串口基本都是基于它 . 


下面我写的这个sport库 , 完全是出于练习的目的, 当然串口操作多一种方式也挺好.

至于哪一个用起来效果更好? 额... 应该都差不多, 这个sport是com组件,不能跨线程.

这个串口控件是大名鼎

«  2020-07-04
创建了主题  › 封装Qt的串口接口为dll, 并使用aardio调用练习

没用过Qt, 所以下面的内容大部分都来源于网上搜索.

Qt自带了串口通信类 , 参考下面博主分享的代码将Qt自带的串口封装成了dll, 这样其他平台使用起来也方便不少, 当然, 其实串口的相关dll已经有很多很多了, aardio也提供了sio通信库

研究这个纯粹为了学习这个过程,O(∩_∩)O~

Qt封转代码参考:

https://blog.csdn.net/a_1234567890abcd/article/details/52263243

https://github.com/wellfrogliu/Qt

«  2020-06-14
创建了主题  › 另一个串口dll的调用演示

aardio已经有了sio串口库了, 功能更强大.

下面这个dll是网上别人分享的, 贵在简单, 只有四个函数, 不用设置很多东西

网址: https://www.cnblogs.com/wenziqi/archive/2010/08/07/1794606.html

测了下, 这个dll不支持$符号内嵌到exe (注意sio库里的pcomm.dll是可以的).


注意: 

这个dll , 虽然提供了H头文件, 但是里面有些常量并未提供出来, 所以下面函数里面的某些常量参数都是猜的, 比如init函数里的pa

«  2020-06-13
创建了主题  › 任务栏闪烁(类似QQ信息来了的提示)

感谢: 撒旦微笑 提供

import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=759;bottom=469) winform.add() /*}}*/ winform.show() winform.hitMin() ::User32.FlashWindowEx({ int cbSize = 20; addr hwnd = winform.hwnd;//窗口句柄 int dwFlags = 0x000
«  2020-06-05
创建了主题  › 调用语雀API

感谢  jacen 分享, 收藏备用

调用语雀API

 //调用语雀API import console;  import web.rest.jsonLiteClient; var http = web.rest.jsonLiteClient();  http.addHeaders = { ["X-Auth-Token"] = "点击语雀个人头像->个人设置->Token获取Token填到这里" } var yuque = http.api("https://www.yuque.co
«  2020-05-30
登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前正在学aardio+halcon机器视觉.
Sciter中文在线文档Sciter在线学习文档
本 站 主 站:Stm32cube中文网
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
aardio在线手册Aardio在线手册
C大Aardio论坛:Aar爱好者论坛
简码教程网:简码编程
AARDIO语言QQ群:70517368
赞助商:才仁机械
下载站:非凡软件站