2017-06-16

Delphi 10.2 Tokyo Collect

Delphi 10.2 Tokyo 個人蒐集


IDDescriptionDate [↓]
2017
30780RAD Studio 10.2 Tokyo FireMonkey 輕鬆存取套件(Accessibility Pack)
輕鬆存取套件 支援 JAWS screen reader 在 Windows 螢幕閱讀、Mac OS X。
網址:
http://docwiki.embarcadero.com/RADStudio/Tokyo/en/FireMonkey_Accessibility_Package
05/31
11:00
30765Linux libmidas file for RAD Studio, Delphi, C++Builder 10.2
Missing libmidas.so file for RAD Studio, Delphi, C++Builder 10.2 Tokyo
網址:
https://community.embarcadero.com/blogs/entry/linux-clientdataset-libmidas-so-now-available
04/18
16:21
30725ISO for RAD Studio, Delphi, C++Builder 10.2 Tokyo
A Double Layer (dual layer) high capacity DVD is required for burning a physical disc.
03/21
18:17
307642017/04 RAD Studio 10.2 Hotfix for Toolchain Issues
This hotfix addresses a number of issues in RAD Studio 10.2 Tokyo
Note:
If you reinstall the entire product after already having installed the hotfix,
when you reinstall this hotfix you will see an error that it is already installed. To fix this,
you will need to manually modify the registry by removing "HotfixLevel" value from
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Embarcadero\BDS\19.0 (Under 64-bit Windows) or
HKEY_LOCAL_MACHINE\SOFTWARE\Embarcadero\BDS\19.0 (Under 32-bit Windows)
網址:
https://community.embarcadero.com/blogs/entry/april-2017-rad-studio-10-2-hotfix-for-toolchain-issues
03/05
17:04
30750CodeSite for RAD Studio, Delphi, C++Builder 10.2 Tokyo03/10
12:53
30728FastReport VCL Embarcadero Edition for RAD Studio, Delphi, C++Builder 10.2 Tokyo
FastReport® VCL is an add-on component that allows your application to generate reports quickly and efficiently.
03/07
16:44
30729FastReport FMX Embarcadero Edition for RAD Studio, Delphi, C++Builder 10.2 Tokyo
Multi-platform report generator for Apple Mac OS X and Microsoft Windows.
03/07
16:42
30730IP*Works for RAD Studio, Delphi 10.2 Tokyo
The full version of /n software’s IP*Works components - A comprehensive suite of components for
Internet communications including more than 40 individual components covering every major Internet Protocol.
03/07
16:41
2016
30491FireMonkey Premium Styles Pack for RAD Studio 10.1 and 10.2
Customize your multi-device applications with nine premium FireMonkey styles. Choose from Jet, Sterling,
Diamond, Emerald Crystal, Emerald Dark, Coral Crystal, Coral Dark, Vapor, Copper, Copper Dark and Radiant styles,
optimized for iOS, Android, Windows and Mac application development.
網址:
https://www.youtube.com/watch?v=c6E3DZrEdtQ
04/13
16:23
30492VCL Premium Styles Pack for RAD Studio 10.1 and 10.2
Customize the look of your VCL Windows applications with eight premium styles included in this style pack.
Choose from the Coral, Diamond, Emerald, Sterling, Jet, Vapor, Copper, Copper Dark and Radiant styles
to change the look of your application.
網址:
https://www.youtube.com/watch?v=c6E3DZrEdtQ
04/13
16:22
[Delphi 10.2 Tokyo]

2017-03-29

Event ID 7000 silsvc 服務無法啟動

在上一篇 "Server 2012 R2 Essentials 每週當機一次" 修正後,每次開機就會出現 Event ID 7000 的錯誤訊息,如下:

記錄檔名稱:         System
來源:            Service Control Manager
日期:            2017/3/29 下午 01:38:22
事件識別碼:         7000
工作類別:          無
層級:            錯誤
關鍵字:           傳統
使用者:           不適用
電腦:            阿布拉
描述:
silsvc 服務無法啟動,因為下列錯誤: 
系統找不到指定的檔案。

請記得到 "服務",將 silsvc 點進內容後,將啟動類型設定為已停用。這樣下次就不會出現這樣的錯誤了。


 [Event 7000 - Service Start Operations]

2017-03-27

移除 Server 2012 R2 Essentials 設定精靈

如上一篇 "Server 2012 R2 Essentials 每週當機一次" 解決完之後 Essentials 就可以當作一般的 Server 使用之了!但每次使用登入操作時都會出現 "設定 Windows Server Essentials" 如下圖:

這相當麻煩,在每次進入都在啟動。在來就是進入 "移除角色及功能" ,如下圖:

在角色中就會出現 "Windows Server Essentials 體驗" 將其勾除掉。如下圖:
這裡我還一併除掉了不使用的 "筆跡和手寫服務"、"PowerShell 遠端存取模組" 等功能。

這時可能會重新啟動電腦,但、還是會出現 "設定 Windows Server Essentials";
而且並沒有出現如附件所提及的 "Run Windows Server Essentials Clean up" 這樣的介面。

進入後打開 Regedit 畫面,請到 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",看到後將旗刪除。 如圖:

如果還有空,也可以看看這個檔案 ( EssentialsRoleConfigWizard.exe ) 其安全性際程也是經過處理。如上一篇 "Server 2012 R2 Essentials 每週當機一次" 操作方式,您也可以把他幹掉作肥料。

資料來源:
remove the Windows Server Essentials Experience role
https://social.technet.microsoft.com/Forums/en-US/6ecf1acc-ae3d-413a-91ae-c725b84e7be0/remove-the-windows-server-essentials-experience-role?forum=winserveressentials

[Essentials Experience role]

2017-03-24

Renewing Lync Server 2010 CA

Lync Server 大量出現錯誤事件 36881, 36888,其內容如下:
記錄檔名稱:         System
來源:            Schannel
日期:            2017/3/19 下午 08:30:22
事件識別碼:         36881
工作類別:          無
等級:            錯誤
關鍵字:           
使用者:           NETWORK SERVICE
電腦:            Lync.doamin.com
描述:
從遠端伺服器收到的憑證已到期或無效。SSL 連線要求失敗。附加的資料中包含伺服器憑證。
事件 Xml:
記錄檔名稱:         System
來源:            Schannel
日期:            2017/3/19 下午 08:30:22
事件識別碼:         36888
工作類別:          無
等級:            錯誤
關鍵字:           
使用者:           NETWORK SERVICE
電腦:            Lync.doamin.com
描述:
已產生以下的嚴重警示: 45。內部錯誤狀態為 552。
事件 Xml:


這個時候請開啟 LyncCA.msc,進入 "憑證",這個時候如果到期日真的過期,開始操作。

以下操作作業參考網頁:Renewing Lync Server 2010/2013 Certificates
第一步先啟動 Lync Deployment Wizard 也就是 Lync部署精靈。


後面操作大同小異。

參考文件:
Renewing Lync Server 2010/2013 Certificates
https://blogs.technet.microsoft.com/uclobby/2013/09/16/renewing-lync-server-20102013-certificates/#comment-19835

[Lync]

2017-02-23

PD Key Script 修正

在 PowerDesigner 中修正 Key 的樣板 Script。

Primary Key:
目錄路徑:Database \ Edit Current DBMS ...
樹狀路徑:MSSQLSRV2008::Script\Objects\PKey\Drop

原始 Value:
alter table [%QUALIFIER%]%TABLE%
   drop constraint %CONSTNAME%

修正後 Value:
if exists (select 1
             from sysobjects
            where name = '%CONSTNAME%'
              and type = 'K')
  alter table [%QUALIFIER%]%TABLE%
   drop constraint %CONSTNAME%

Alternate Key:
目錄路徑:Database \ Edit Current DBMS ...
樹狀路徑:MSSQLSRV2008::Script\Objects\Key\Drop
修正的方法相同!

修正後的設定檔,有機會可以備份:
D:\Program Files\Sybase\PowerDesigner 16\Resource Files\DBMS\sqlsv2k8.xdb
[PowerDesigner ]

2016-12-27

Server 2012 R2 Essentials 每週當機一次

公司有合法的 Server 2012 R2 Essentials 放著不用、要幹嘛? ( 用啊! )
問題來了,好似用到一定的天數後系統就會當機,而且會遇到前端服務無法啟動的問題。確認不是Power當機,就朝著系統服務來下手。可以參考最後的 "資料來源" ^0^

當機的元兇在 C:\Windows\system32\silsvc.exe,他是處理程序 silsvc.exe ( Server Infrastructure Licensing ) 以代表使用者 NT AUTHORITY\SYSTEM,啟動電腦 (電腦名稱) 的 電源關閉,原因如下:
找不到這個原因的標題
理由代碼: 0x2000c
關機類型: 電源關閉
註解: 授權規範服務造成關機。如需詳細資訊,請參閱 [Microsoft] \ [Windows] \ [伺服器基礎架構授權] \ [操作] 之下的事件。

例、可以透過 "工作管理員" 找到正確的檔案位置。如下圖:

在上圖找到你的檔案位置之前,需要將隱藏系統檔案的功能先關閉。如下:

在看到檔案內容之後、會發現,其安全性繼承的成員也不一樣。如下圖:

您需要將繼承改為啟用繼承。按照步驟1步驟2、之後3就會自動完成了。如下圖:
( 步驟1和步驟2都需要每每確定、確定,在重新進入檔案內容才會生效 )

如果正確後,就可以步驟1變更為不正確的檔名。步驟2結束工作、來停掉他。如下圖:

這裡怎麼知道有沒有成功?
1改名就不讓你改。
2結束工作後、系統會馬上在起同相同的服務。

接下來的就是關閉不必要的啟動 "移除 Server 2012 R2 Essentials 設定精靈" 了。
在追加一的動作 "停用服務" 請看 "Event ID 7000 silsvc 服務無法啟動"。

資料來源:

How to configure Windows Server 2012 R2 Essentials Hyper-V Role as HOST
https://community.spiceworks.com/topic/1127829-how-to-configure-windows-server-2012-r2-essentials-hyper-v-role-as-host?page=2
ESSENTIALS 2012 R2 HYPER-V SHUTS DOWN WEEKLY
https://moodjbow.wordpress.com/2014/03/17/essentials-2012-r2-hyper-v-shuts-down-weekly/
HOW TO DISABLE SERVER INFRASTRUCTURE LICENSING SERVICE
https://moodjbow.wordpress.com/2014/03/17/how-to-disable-server-infrastructure-licensing-service/

[Disable Server Infrastructure Licensing]

2016-10-07

DWL-3200AP MAC Filter 相關問題

D-Link DWL-3200AP 當遇到需要使用 MAC Filter 如果會遇到 MAC Address 設定好了,但使用者登入不進。或是設定 MAC Filter 會出現錯誤 "Invalid MAC Address" 這樣的錯誤。

解決方式,請到 ftp.dlink.RU 下載 最新的 韌體更新、v2.50 韌體更新檔案 DWL-3200_v2_50rc341f.tfp

RU = 俄羅斯
http://www.cnpedia.com/pages/knowledge/Country.htm

{END}

2016-05-19

啟動 ActiveX Project for Delphi 10.1

因為還是喜歡 COM+ 的開發方式,方便、有效率、高效能 . . .
在安裝 Delphi 10.1 無意間誤觸使用原廠的網路安裝檔,就是這個 175MB:



安裝後的 ActiveX 專案是不見的,也就是不能開發 COM+

Delphi 10 的 ActiveX 還見在的畫面 ↑

Delphi 10.1 的 ActiveX 不見在的畫面 ↑

在 RegEdit 中修改:

  • 在: “HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BDS\18.0\Known IDE Packages\Delphi”
  • 找到:“$(BDS)\Bin\delphicompro240.bpl” 把 “__(Untitled)” 前面的雙底線刪掉,如: “(Untitled)”。


我發現 COM+ 的開發者越來越少,所以、就這樣吧!
[COM+]

2016-04-28

Phoenix BIOS 嗶嗶叫啊嗶嗶叫

Phoenix BIOS :
1短:系統啟動正常。
1短1短1短:系統加電自檢初始化失敗。
1短1短2短:主板錯誤。
1短1短3短:CMOS或電池錯誤。
1短1短4短:ROM BIOS校驗失敗。
1短2短1短:系統時鐘錯誤。
1短2短2短:DMA初始化失敗。
1短2短3短:DMA頁寄存器錯誤。
1短3短1短:RAM刷新錯誤。
1短3短2短:基本內存錯誤。
1短3短3短:基本內存錯誤。
1短4短1短:基本內存地址線錯誤。
1短4短2短:基本內存校驗錯誤。
1短4短3短:EISA時序器錯誤。
1短4短4短:EASA NMI口錯誤。
2短1短2短到2短4短4短(即所有開始為2短的聲音的組合):基本內存錯誤。
3短1短1短:從DMA寄存器錯誤。
3短1短2短:主DMA寄存器錯誤。
3短1短3短:主中斷處理寄存器錯誤。
3短1短4短:從中斷處理寄存器錯誤。
3短2短4短:鍵盤控制器錯誤。
3短3短4短:顯示卡內存錯誤。
3短4短2短:顯示錯誤。
3短4短3短:未發現顯示只讀存儲器。
4短2短1短:時鐘錯誤。
4短2短2短:關機錯誤。
4短2短3短:A20門錯誤。
4短2短4短:保護模式中斷錯誤。
4短3短1短:內存錯誤。
4短3短3短:時鐘2錯誤。
4短3短4短:實時鐘錯誤。
4短4短1短:串行口錯誤。
4短4短2短:並行口錯誤。
4短4短3短:數字協處理器錯誤。

[Phoenix]

2016-03-10

在 SQL 上使用 JSON

微軟已經公佈 SQL Server 2016 將支援原生 JSON 的功能:

JSON Data (SQL Server)
https://msdn.microsoft.com/en-us/library/dn921897.aspx

Format Query Results as JSON with FOR JSON (SQL Server)
https://msdn.microsoft.com/en-us/library/dn921882.aspx

在工作的資料庫沒這麼新,怎麼辦呢?
拜讀 Phil Factor 的文章,可以在既有的資料庫上應用 JSON,而且已經更新到 Update 8 (2014/05),相當穩定。

Consuming JSON Strings in SQL Server
https://www.simple-talk.com/sql/t-sql-programming/consuming-json-strings-in-sql-server/

原文有詳細的說明,這理只記錄我的使用:

資料表函式:
select * from dbo.json_Parse('{"Amount":5072.1,"DueDate":42398,"ChkID":"PBB400533"}');
select * from dbo.Factor_parseJSON('{"Amount":5072.1,"DueDate":42398,"ChkID":"PBB400533"}');

純量值函式:
SELECT T2.JsonInfo
     , dbo.json_value(T2.JsonInfo, 'ChkID') AS ChkID
     , CONVERT(DATETIME, CONVERT(Decimal, dbo.json_value(T2.JsonInfo, 'DueDate'))) AS DueDate
     , CONVERT(Money, dbo.json_value(T2.JsonInfo, 'Amount')) AS Amount
  FROM [acc].[PayablesM] AS T1
     , [acc].[PayablesD] AS T2
 WHERE T1.CpnID = 'CCP'
   AND T1.SysID = '20160310001'
   AND T2.UID = T1.UID
   AND ISNULL(T2.JsonInfo, '') <> ''


針對 SQL Server 2008 的修改 json_Value
IF  EXISTS (SELECT * FROM sys.objects 
             WHERE object_id = OBJECT_ID(N'dbo.json_Value')
               AND type in ('TF', 'FN', 'IF') ) -- TF = TABLE_FUNCTION ; FN = FUNCTION ; IF = INLINE_TABLE_FUNCTION
DROP FUNCTION [dbo].[json_Value]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

/****** json_Value  ******/
CREATE FUNCTION [dbo].[json_Value](@json nvarchar(max),@path nvarchar(max))
RETURNS nvarchar(MAX) 
AS
BEGIN
    declare @data pJsonData
    declare @p1   TABLE(id int identity(1,1),name nvarchar(max))
    
    insert into @data       select id,parent,name,kind,value from dbo.json_Parse(@json)
    set @path=ltrim(rtrim(@path))
    if @path!='' insert into @p1(name)   select * from dbo.ufn_Split(@path,'.')
    
    declare @c0     int =0
    declare @cur    int =null
    declare @step   int =1
    declare @max    int =1
    declare @v      nvarchar(max)
    declare @v2     nvarchar(max)
    declare @kind   nvarchar(max)
    select  @max=max(id) from @p1

    SELECT @c0=id, @cur=id, @kind=kind, @v=value
      FROM @data
      WHERE parent=0 -- Current object is the one with parent = 0

    IF @cur is null RETURN null                                             -- Should not happen
    WHILE (@step<=@max and @c0 is not null) 
    BEGIN
      SELECT @v=name FROM @p1 WHERE id=@step
      SET @c0 =null
      if (IsNumeric(@v)=1) 
      BEGIN
        if (@kind!='ARRAY') return cast('Using index in non array JSON' as int);
        SET @v2=@v

        -- SQL Server 2008
        SELECT @c0=ID, @cur=ID, @kind=kind, @v=value 
          FROM (SELECT ROW_NUMBER() OVER (ORDER BY ID) RID
                     , ID, kind, value
                  FROM @data 
                 WHERE parent = @cur 
               ) AS T1
          WHERE RID = CONVERT(INT, @v)

        -- SQL Server 2012
        --SELECT @c0=ID, @cur=ID, @kind=kind, @v=value 
        --  FROM @data 
        -- WHERE parent = @cur 
        -- ORDER BY ID 
        --       OFFSET convert(int, @v) ROWS 
        --       FETCH FIRST 1 ROW ONLY
      END
      else 
      BEGIN
        if (@kind!='OBJECT') return cast('Using property name in a non-object JSON' as int);
        SELECT @c0=ID,@cur=ID,@kind=kind,@v=value 
          FROM @data
         WHERE parent=@cur and name=@v
      END
      set @step = @step+1
    END
    if @c0 is null return null
    if (@kind='OBJECT' or @kind='ARRAY') return dbo.json_toJson(@data,@cur)
    return @v
END
GO
[JSON & SQL]