加载中…
个人资料
红鱼儿
红鱼儿
  • 博客等级:
  • 博客积分:0
  • 博客访问:1,066,633
  • 关注人气:233
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
评论
加载中…
留言
加载中…
访客
加载中…
好友
加载中…
博文
(2018-07-17 08:17)
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

delphi

分类: Delphi10.2
2.安装后,需要通过设置功能,设置一下分辩率,变成手机的样子,如下图:

3.安装并启动虚拟机,Delphi IDE是无法检测到的,需要用ADB联接一下:
c:
cd C:\Program Files (x86)\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows\platform-tools\
adb connect 127.0.0.1:54001
pause
因为每次重启模拟器,都要用ADB重联一下,所以做了的批处理。

4.回到delphi,刷新一下设备,就能看到模拟器了!
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
分类: Delphi10.2
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

delphi

分类: Delphi10.2
    链式写法有很多优点:连贯、语意集中、简洁、一气呵成、可读性强。比如要把 3.1415926 中的 59 提取为一个整数:Pi.ToString().Substring(5,2).ToInteger() 轻车熟路的感觉,让人觉得,哇!好帅的写法,牛x!

   以前以为只有 TJSONBuilder 才支持链式语法,今天发现 TJSONObject 也支持,比如要生成下面的 JSON 
{
  'name': '张三',
  'vip': true,
  'telephones': [
    '13012345678',
    '19786543210'
  ],
  'age': 24,
  'size': 1.72,
  'adresses': [
    {
      'adress': 'foo',
      'city': 'The wall',
      'pc': 57000
  &
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

delphi

kbmmw

分类: kbmMW
用事务利用下面的语句提交两个数据集:
kbmMWClientTransactionResolver1.Resolve([Master,Detail]);
当Master,Detail两个数据集都有错误的时候,在客户端会产生一个错误:

Stream read error.

进一步跟踪发现,在Resolve方法中,当为Detail加载出错信息时产生这个错误:
                        // Load errortable from result stream.
                        InfoTable.LoadFromStreamViaFormat(cl.ResultStream,tsf);
就是说,
cl把两个数据集提交到服务端,利用ResultStream接收出错信息,在这两个表都有错的情况下,为Master加载出错信息时,正常,而当为Detail加载时就出上面的错误。

2018-08-20 后记:这个问题在kbmMW 5.06.20
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

kbmmw

delphi

分类: kbmMW
kbmMW的日志框架已经有一段时间了,它能够将二进制数据转换为“美化”的可读字符串数据。 由于这样的功能可以有更广泛的用途,因此我决定从日志框架中将它提取到一个独立的类中。

用起来非常简单:

var
   bp:TkbmMWPrettyBinary;
   s:string;
   ba:TkbmMWBytes;
begin
     // Produce some demo data.
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
(2018-06-08 15:47)
标签:

delphi

分类: kbmMW
用kbmMWLog输出日志,发现输出这样的内容:
2018-06-08T15:15:31.782+08:00 : Info    : String             : 3200/3100              : TkbmMWScheduledRelaxedEventThread(kbmMWSystemScheduler) : 2018-06-08 15:15:31

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhOGJkNDI2YWNhMWE0YzcyODRjZWQ4MTIxNjNjZmU1ZSIsIm5iZiI6MTUyODQ0MjEzNiwiaXNzIjoiaXNzdWVyIiwiZXhwIjoxNTI4NDQ1NzM2LCJpYXQiOjE1Mjg0NDIxMzYsImp0aSI6ImU3MWY2ZjdjLTE0OTMtNDRmNS04MmIzLWY2YWE1ZjRiNmFhYiJ9.VNFCq9fSpOe-BZjyBPmA3VvAHejLya6TTzJAzGIM51k
....
怎么多出标黑的内容呢,难道是kbmMWScheduler多输出了调试信息?查了半天,并进一步测试才知道,原来,在Scheduler中使用kbmMW.Log来记录日志,kbmMW自动加入的这个信息。
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

delphi

分类: Quality
在iOS下,更改字体颜色可能会导致绘制文本的大小不同,我知道听起来很疯狂,但我从iOS 9测试到iOS 11,都这种情况,虽然只有1或2个像素的差异,但还是变了。
找到:

  procedure TTextSettings.SetFontColor(const Value: TAlphaColor); 
 begin 
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

kbmmw

分类: kbmMW
问题:
在客户端上使用kbmMW Server或Service的OnAuthenticate事件,在哪里分配用户名/密码?

回答:
分两种情况:
1.在发送WIB消息时,利用TkbmMWClientIdentity实例的UserName/password属性来提供给服务端;
2.对于普通的客户端调用,利用TkbmMWSimpleClient(或其子类)UserName/Password/Token属性来提供给服务端。

TkbmMWClientQuery和TkbmMWStoredProcQuery都有一个Act
阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
标签:

kbmmw

delphi

分类: kbmMW
今天看kbmMW 新闻组,有人问了下面这个问题,作者也给了详细的回复,对于这种情况,很常用,所以整理出来,与大家分享。

问题:
在发送给客户端显示之前,拦截服务器/数据库引发异常的最佳位置(服务器端事件)是什么?

我正在使用kbmMW 5.0.5.10并且用Firebird做数据库,因为Firebird的异常具有奇怪的格式,所以在将这些异常发送到客户端程序之前,我想拦截它们,并向客户端程序发送更有意义的错误信息息。 那么最好的地方(服务器端事件)是什么的?

回答:
利用TkbmMWServer OnServeResponse事件,可以捕获所有Service响应给客户端的信息。

在这个事件中,检查OutStream.IsError,StatusCode和StatusText属性。 如果发生错误,状态代码为负值。 您可以将错误代码与kbmMWException.pas文件中的某个错误代码进行比较,也可以通过属性设置新的代码或新的文本信息。通常StatusText是OK,否则的话为异常的错误信息。





阅读  ┆ 评论  ┆ 转载 ┆ 收藏 
  

新浪BLOG意见反馈留言板 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

新浪公司 版权所有