發表文章

目前顯示的是 2017的文章

EXCEL VBA Scriptlet.TypeLib Error GUID 365

轉貼:https://support.microsoft.com/zh-tw/help/4036837/run-time-error-70-permission-denied-generate-guid-with-office-vba 「 執行階段錯誤 70: 使用權限被拒 」 建立 GUID,以透過 Office VBA 時  電子郵件  列印 重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。如果您發現錯誤,並想要協助我們進行改善,請填寫本篇文章下方的問卷。 檢視原始英文文章: 4036837 重要 這篇文章包含示範如何以降低安全性設定,或關閉電腦上的安全性功能的資訊。您可以進行這些變更,來解決特定的問題。在進行這些變更之前,Microsoft 會建議您先評估在特定環境中實作此因應措施與相關聯的風險。如果您選擇實作此因應措施,採用任何其他的適當步驟,以協助保護您的系統。 狀況 當您執行 Visual Basic for Applications (VBA) 程式碼時,會呼叫 CreateObject("Scriptlet.TypeLib")。GUID 函式來建立 GUID,在 Microsoft Office 應用程式 (Word、 Excel,等等) 中您會收到下列錯誤訊息: Run-time error '70': Permission denied 如果已安裝下列的年 7 月 2017年安全性更新的 Office,就會發生這個問題: Office 2016 的安全性更新: 2017 年 7 月 11, Office 2013 的安全性更新: 2017 年 7 月 1

SQL Server 備份 清除 LOG

DECLARE @HandleDBName NVARCHAR(MAX), @BackupFilePath NVARCHAR(MAX) SET @HandleDBName = N'DREP_ENT' SET @BackupFilePath = 'D:\AVMS_DB_Source\LogBack\' + @HandleDBName + '_' + REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR,GETDATE(), 20), '-', ''), ' ' ,''), ':', '') + '.LOG' USE master GO -- 備份目前的 log BACKUP LOG DREP_ENT TO DISK=''' + @BackupFilePath + ''' --將資料庫復原模式切換到簡單模式 ALTER DATABASE DREP_ENT SET RECOVERY SIMPLE WITH NO_WAIT -- 找到 DatabaseNameLog 的值 USE DREP_ENT GO DECLARE @DBLogName VARCHAR(MAX) SELECT @DBLogName = name FROM [sys].[database_files] WHERE type_desc = 'log' --縮減 log file 到 1MB DBCC SHRINKFILE(@DBLogName, 1) --將資料庫復原模式切換到完整模式 USE [master] GO ALTER DATABASE DREP_ENT SET RECOVERY FULL WITH NO_WAIT Ref:http://charlesbc.blogspot.tw/2011/01/sql-server-log.html

Windows 存取檔案記錄

1.在File Server執行gpedit.msc -> 電腦設定 -> Windows 設定 -> 安全性設定 -> 本機原則 -> 稽核原則 -> 啟動"稽核物件存取" 2.在你要監控的資料夾上面點右鍵 -> 內容 -> 安全性 -> 進階 -> 稽核 , 在此加入你要稽核的帳號,勾選"讀取屬性" 3.稽核標籤底下有個"以顯示於此套用到子物件...."的選項要打勾 4.只要該User有去讀取資料夾裡面的檔案時..就會出現類似下面的事件紀錄 (在事件檢視器 -> 安全性裡面) PS:由於安全性的紀錄會很多筆..你可以透過篩選的方式篩選"事件來源" & "物件存取" & "事件識別碼" 來縮小範圍 -------------------------------------------------------------- 事件類型: 稽核成功 事件來源:  Security 事件類別目錄:  物件存取   事件識別碼:  560 日期:  2009/9/8 時間:  上午 10:36:53 使用者:   DFS\administrator 電腦: DFS2003-3 描述: 物件開啟:   物件伺服器: Security   物件類型: File   物件名稱:  C:\123\新增WordPad 文件.doc   處理識別碼: 1824   操作識別碼: {0,742338}   程序識別碼: 3384   影像檔案名稱: C:\WINDOWS\explorer.exe   主要使用者名稱: administrator   主網域: DFS   主要登入識別碼: (0x0,0x33ADB) ------------------------------------------

Entity Framework發生『Validation failed for one or more entities. See 'EntityValidationErrors' property for more details』

catch (DbEntityValidationException ex) { var entityError = ex.EntityValidationErrors.SelectMany(x => x.ValidationErrors).Select(x => x.ErrorMessage); var getFullMessage = string .Join( "; " , entityError); var exceptionMessage = string .Concat(ex.Message, "errors are: " , getFullMessage); //NLog LogException( new Exception( string .Format( "File : {0} {1}." , logFile.FullName, exceptionMessage), ex)); }

SQL Server Split

DECLARE @ DataSource TABLE ( [ ID ] TINYINT IDENTITY ( 1 , 1 ) ,[ Value ] NVARCHAR ( 128 ) ) DECLARE @ Value NVARCHAR ( MAX ) = 'BAT | CAT | RAT | MAT' DECLARE @ XML xml = N '<r><![CDATA[' + REPLACE (@ Value , '|' , ']]></r><r><![CDATA[' ) + ']]></r>' INSERT INTO @ DataSource ([ Value ]) SELECT RTRIM ( LTRIM ( T . c . value ( '.' , 'NVARCHAR(128)' ))) FROM @ xml . nodes ( '//r' ) T ( c ) SELECT [ ID ] ,[ Value ] FROM @ DataSource ref:http://stackoverflow.com/questions/20698318/how-to-split-a-string-into-variables-in-sql