2019年7月1日 星期一

做過的事,很快就忘..<是該記錄一下!!>.


今天要做一個過濾的動作,將新的暫存 Table (A)  及舊的Table (B) 做一個過濾的動作,取得存在於暫存Table 但不在舊 Table 上的新資料。
找到有人整理清析的說明圖,一目了然!

Select <xxx>
From Table A (從暫存Table A中)
Left Join Table B (加入舊Table B的項目)
on A.key = B.key (設定 A、B Table 相等的是Key )
Where B.key is null (只取 B  Table Key 值是空的,即刪除A、B重疊的項目的意思)





完整參考如下:
https://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins

2015年5月4日 星期一

Domino Mail Box issue : The database is taken offline and cannot be opened

今天第一次遇到Domino Server 的Database 變為離線,紀錄一下 :

嘗試開啟資料庫,會出現錯誤訊息:

"database is being taken offline and cannot be opened"


也不能在Server Console 下load fixup/compact/updall  等 command,

測試將資料庫移動到其他目錄,可在 Server 的 命令提示字元 下,nfixup/ncompact/nupdall 等command.

最後, 找到這篇 Petter Blog

做一個Agent , 並Run 在Server 上. (tell agent run "agent_database.nsf" 'agent_name')

Option Public
Option Declare

Declare Private Function NSFBringDatabaseOnline Lib "nnotes" Alias "NSFBringDatabaseOnline" (  Byval dbPath As String, Byval Z As Long) As Integer

Sub Initialize

Call NSFBringDatabaseOnline("mail/abc.xyz.nsf",0) -> abc.xyz.nsf 更換為異常的資料庫

End Sub

2014年11月25日 星期二

VB.Net 的 路徑 在 Schedule Job 與 Command Prompt 差在哪?

執行 這篇 的說明, 得到下面的值.. 紀錄一下.. 否則看xxx 的說明, 也會曲解意思.. 

Schedule Tasks (排程)下的執行結果: 
1.取得和設置當前目錄(即該進程從中啟動的目錄)的完全限定路徑。 
System.Environment.CurrentDirectory: 
結果:C:\Windows\system32 

2.取得啟動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。 
System.Windows.Forms.Application.StartupPath: 
結果:D:\EvnPathTest\EvnPathTest\bin\Debug 

3.取得應用程序的當前工作目錄。 
System.IO.Directory.GetCurrentDirectory(): 
結果:C:\Windows\system32 

4.取得當前 Thread 的當前應用程序域的基目錄,它由程序集衝突解決程序用來探測程序集。 
System.AppDomain.CurrentDomain.BaseDirectory: 
結果:D:\EvnPathTest\EvnPathTest\bin\Debug\ 

5.取得和設置包含該應用程序的目錄的名稱。 
System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase: 
結果:D:\EvnPathTest\EvnPathTest\bin\Debug\ 

6.取得啟動了應用程序的可執行文件的路徑,包括可執行文件的名稱。 
System.Windows.Forms.Application.ExecutablePath: 
結果:D:\EvnPathTest\EvnPathTest\bin\Debug\EvnPathTest.exe 

7.取得當前執行的exe的文件名。 
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName: 
結果:D:\EvnPathTest\EvnPathTest\bin\Debug\EvnPathTest.exe 

8.取得當前進程的完整路徑,包含文件名。 
Me.GetType().Assembly.Location: 
結果:D:\EvnPathTest\EvnPathTest\bin\Debug\EvnPathTest.exe 


命令提示字元(Command Prompt)下的執行結果: 
1.取得和設置當前目錄(即該進程從中啟動的目錄)的完全限定路徑。 
System.Environment.CurrentDirectory: 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug 

2.取得啟動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。 
System.Windows.Forms.Application.StartupPath: 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug 

3.取得應用程序的當前工作目錄。 
System.IO.Directory.GetCurrentDirectory(): 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug 

4.取得當前 Thread 的當前應用程序域的基目錄,它由程序集衝突解決程序用來探測程序集。 
System.AppDomain.CurrentDomain.BaseDirectory:
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug\ 

5.取得和設置包含該應用程序的目錄的名稱。 
System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase: 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug\ 

6.取得啟動了應用程序的可執行文件的路徑,包括可執行文件的名稱。 
System.Windows.Forms.Application.ExecutablePath: 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug\EvnPathTest.exe 

7.取得當前執行的exe的文件名。 
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName: 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug\EvnPathTest.exe 

8.取得當前進程的完整路徑,包含文件名。 
Me.GetType().Assembly.Location: 
結果:D:\Work\VBWork\EvnPathTest\EvnPathTest\bin\Debug\EvnPathTest.exe 


由結果來看, 系統排程與手動執行差在 :GetCurrentDirectory 及 CurrentDirectory 

2014年5月9日 星期五

以 lmhosts 指定網域控制器位置

有點困擾的問題.. 紀錄一下.. 

最近有一個 單一認證服務(SSO) 的網站 , 有加入網域, DNS 伺服器是指向網域控制器(DC)

但是因為某種原因,DNS必須指到外部DNS 。

這個改變造成 網站無法單一登入。

覺得應該是外部DNS 不知道 網域控制器在哪兒,因此需用於 lmhosts 來另外指定。

參考這份參考文件  ,第一行指定"網域名稱"(需大寫),第二行指定網域控制器是哪一台機器名稱

如有兩台以上的網域控制器,可往下加。

設定好後,用 

C:\> nbtstat -R => 清除並重新載入NetBIOS cache

C:\> nbtstat -c => 列出 NetBIOS Cache name table. 






2014年4月24日 星期四

Free 且可設定PDF 文件到期日的PDF保全軟體

找到好東西,紀錄一下....

目前Office 2010/2013 可以將文件於另存新檔時,轉存成PDF格式。方便好用,但缺點是缺少一般安全性的功能。 

一般Free 免費的PDF製作軟體,如: doPDF, PDF Creator 等,是透過安裝成虛擬印表機的方式,於文件列印時,透過虛擬印表機列印製作成PDF,能做到一般的禁止列印、禁止擷取或開啟需密碼等,但不能做到設定文件過期的功能。

今天找到一套 Free 的,可以設定 "文件期限"(Document Expired Time )的PDF 保全軟體(PDF Security OwnerGuard )。

以下是12.7.8 個人版的畫面,

1. 建立新計畫:
    第一步:點選 "Create New Project" 建立計畫名稱

  第二步:設定時間限制 (Time Limitation ) 的到期日。

2. 開始加密PDF: 點選主頁面的 【Protect Your File】
    第一步:挑選檔案:  


    第二步:挑選專案(Project):  

     第三步:設定開啟密碼

    第四步:挑選浮水印的檔案: 只有第一頁會被當成浮水印..  ,否則就用預設,無浮水印(No Watermark)

    第五步:設定匯出目錄:   並點選【Protect Security Files】來進行轉出。

這樣就完成了~



2014年1月17日 星期五

救回遺失Windows 2008R2 的100MB :Bootmgr is missing

話說今天一台Windows 2008 R2機器發生硬體(磁碟)問題,作業系統無法運作,臨時倒備份的IMAGE,才發現缺少關鍵的系統保留碟(System Reserved)。

開機後,停在BOOTMGR is missing 的字樣,未免忘記,將查到的做法紀錄一下!

 1. Boot from your Windows Server 2008 R2 x64 DVD.
2. Repair
3. Command Prompt
4. rename c:\boot\BCD bcd.old 
5. Bootrec /RebuildBcd  以下設定系統保留碟為系統啟動的第一個磁區。
6. diskpart
 7. select disk 0  (可先用 list 來確認有幾棵disk)
8. select partition 1 (the 100MB partition) (可先用 list 來確認 100MB partition 在第幾個序號)
 9. active 設定完畢
10. exit
11. reboot server and remove DVD 來源連結

2013年12月29日 星期日

遇到MS Office 2010 無法安裝問題

今天遇到『Microsoft Office 2010 不支援從 Microsoft Office 2010 的Prerelease版本升級。您必須先解除安裝任何Microsoft Office 2010 產品及相關技術的Prerelease版本。』的問題

新增/移除程式內已無Office 相關的Program. 就是無法裝,使用 Windows Installer CleanUp 也沒找到。
最後,看到這篇,最後刪 register 才解決。 http://support.microsoft.com/KB/928218
注意 在下列登錄機碼中,星號字元 (*) 代表子機碼名稱中一或多個字元。

2013年10月4日 星期五

空間不見了, 請試著刪除別人的垃圾桶

1TB 的空間發現少了幾百GB,怎麼回事?

已將桌面的垃圾桶清空,未何還沒釋放出空間?

查了一下,要用系統管理員權限適放別人的垃圾桶,參考如下

開啟命令提示字元=> rd /s c:\$Recycle.bin 即可




2013年8月5日 星期一

排除 2008 R2 file server 出現無權限刪除目錄的問題

記錄一下: 
最近Windows 2008R2 預到一個問題,不知怎麼搞的,有一個目錄都刪不掉,即使是本機管理員(local administrator )也沒權限刪,甚為困擾。

查了幾篇提到,透過 icacls 來設定owner都仍是 access is denied. 

最後
1. 關閉UAC,取消透過TrustedInstaller 帳號,來執行任務的方式。
2. 關閉UAC必需重啟,Folder 權限就恢復可設定。
參考文件: 






2013年4月23日 星期二

新設Win7 停用administrator 時,無法登入怎麼辦?

<怕忘記..記錄一下!!>

今天發生一件蠢事,

新設Win7 ,安裝時建立一個臨時帳號,登入電腦後,第一個動作是將administrator 變更密碼,並將臨時帳號刪除,再重開。

重開時,看著[使用者]清單上的administrator 有個箭頭向下的符號,心想,完蛋了..

果不其然,登入administrator時,出現未啟用的提示訊息。

還好,重新開機時,按F8以[安全模式(含命令提示)]登入系統,於administrator 的提示框中,輸入新設的密碼。

順利進入後,於命令提示視窗中,輸入 "lusrmgr",即可彈出使用者管理介面。將 administrator 的"內容"屬性=>取消[帳號已停用]的選項再重開即可。

參考如下。

2013年4月21日 星期日

Windows 2008R2 執行 WSUS 連線驗證時失敗及排除

<怕忘記,記錄一下...>

Windows 2008R2 安裝WSUS 時,安裝後,於測試Update Service 時(Connect to Upstream Server),出現連線錯誤如下:

[

WebException: The request failed with the error message:
--
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="%2fmicrosoftupdate%2fv6%2ferrorinformation.aspx%3ferror%3d15">here</a>.</h2>
</body></html>

--.
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at Microsoft.UpdateServices.ServerSyncWebServices.ServerSync.ServerSyncProxy.GetAuthConfig()
   at Microsoft.UpdateServices.ServerSync.ServerSyncLib.InternetGetServerAuthConfig(ServerSyncProxy proxy, WebServiceCommunicationHelper webServiceHelper)
   at Microsoft.UpdateServices.ServerSync.ServerSyncLib.Authenticate(AuthorizationManager authorizationManager, Boolean checkExpiration, ServerSyncProxy proxy, Cookie cookie, WebServiceCommunicationHelper webServiceHelper)
   at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.SyncConfigUpdatesFromUSS()
   at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.ExecuteSyncProtocol(Boolean allowRedirect)
]

排除方法:
1. 安裝KB2734608 , <參考討論>

2013年4月11日 星期四

Office 2010 無法安裝 - 防寫保護影響


記錄一下..以免忘記..

問題:
安裝Office 2010時,出現[Windows Installer 服務無法更新某些被防寫保護的 Windows 檔案]的錯誤訊息,查[事件檢視器]的[應用程式],有下列錯誤訊息:

===
錯誤訊息:
產品: Microsoft Software Update for Web Folders  (Chinese (Traditional)) 14 -- 錯誤 1933. Windows Installer 服務無法更新某些被防寫保護的 Windows 檔案。 SFP 錯誤: 3。防寫檔案清單:\r\nc:\program files\common files\microsoft shared\web server extensions\40\bin\fp4autl.dll

===
參考這篇:[Fix Error 1933 Easily!] 
===
解法:
1. 於 Office 2010 安裝光碟中,搜尋 fp4ault.dll 檔案。

2. 複製到 c:\program files\common files\microsoft shared\web server extensions\40\bin\ 下

3. 再次安裝,就正常了.. 

4. 如果不正常,可能 fpencode.dll 也需複製,視事件檢視器的Error 訊息而定。


2012年11月26日 星期一

VMware縮減硬碟空間

VMware 可以很方便的增加硬碟空間,但怎麼縮減硬碟空間(shrink harddisk in VMware Client )呢?

查了一下,必需使用VMware converter 來重新Create 一個Client,借由重設Hardware的機會下,重設Harddisk的Quota.

http://www.techrepublic.com/blog/networking/how-to-shrink-a-vmdk-using-vmware-converter/5362

其間出現: Unable to obtain hardware information for the selected machine.

查了半天是 Firewall 問題,操作的Converter Client 必需能連上VM Source Client 的Host Server,查log是走902的Port.

2012年11月18日 星期日

Ubuntu apt-get update 出現連線失敗..?

Ubuntu 下 : sudu apt-get update 更新到後面.. 出現連http://tw.archive.ubuntu.com 連線失敗..

該怎麼辦呢?

1. cd /etc/apt : 到 /etc/apt/下
2. vi source.list : 以vi 修改 source.list 檔
3. 更新來源由 tw.archive.ubuntu.com 改為 us.archive.ubuntu.com
以下列指令整批修正  :
:1,$s/SourceWord/DestWord/g : 整批修正
:1,$s/SourceWord/DestWord/gc: 整批修正, 逐一確認再替換 
4. :x! : 存檔

2012年11月15日 星期四

Win7 的硬碟變成了可移動式裝置??

怪了..

Win7 中硬碟不是插在主機板上,怎麼會變成可移動式裝置? 

原來是: 硬碟啟用AHCI mode後,需在加裝 Intel 的Rapid Storage Technology.. 

以M4610為例: 到Acer網站下載Intel 的 SATA driver 即可! 




2012年10月2日 星期二

Sharepoint 搜尋 File Server 個人碟的Security設定

一般公司都會配給員工個人碟,讓員工能夠將公司資料或重要資料放在網路上,一則有定時備份的好處,不怕因個人NB Hardware 問題而毀損,一則能讓Citrix/Remote Server 等一些特定程式使用共用的Data 區域。
但是 File Server 的Share Folder 該如何正確設定,才能讓 個人資料不會被其他人搜詢出來呢?

環境假設:
Server Name: FileServer1
分享目錄:ShareFolder
員工1:Staff1 的個人碟:\\FileServer1\ShareFolder\Staff1
員工2:Staff2 的個人碟:\\FileServer1\ShareFolder\Staff2

首先,分享目錄(\\FileServer\ShareFolder)有兩個設定權限的地方:Sharing 及Security
Sharing 的成員設定 Domain users 具有讀/寫(Read/Write),如果 Security 成員也設定Domain User,雖權限只給Folder 瀏覽權限,但子目錄 Staff1 將繼承Domain User 具Folder 瀏覽權限。

於sharepoint 搜尋的結果,將造成所有人都可搜詢出Staff1 的資料,雖點選路徑後,無法進入,但部份資料已於搜詢上顯示出來,實為不當。

經測試後,只需將分享目錄的Security 上的Domain User刪除。於子目錄 Staff1 的Security上保留Staff1的Modify 權限,不能讓使用者瀏覽(\\FilerServer1\ShareFolder),但能讓使用者直接開啟目錄(\\FileServer1\ShareFolder\Staff1 )。

這樣的設定權限,讓Sharepoint 顯示搜尋結果時,只會顯示自己有權限的目錄資料。

參考文章

2012年8月29日 星期三

Excel 表格中取出長路徑字串中的檔名

我有一個Excel 的Cell,是一長串的檔名路徑,我只要取最後的檔名,這困擾著我..
[
\Device\HarddiskVolume4\partir\Lotus\Notes\framework\shared\eclipse\features\com.ibm.collaboration.realtime.telephony.prod.feature_8.0.2.20100802-0849\feature_hu.properties
]
有一些formula 如 Left(B) / Right(B) / Find / SEARCH ,感覺沒一個可用的,算了..
自己建一個 Formula 來處理吧!

作法:

1. 開啟 Excel 2010 及文件
2. 移至[檢視]
3. 點選[巨集]
4. 填入巨集名稱: [RightOfBackSlash] -> 建立
5. 自動開出一個模組(Module1)於VBAProject 中,將下方程式貼上

Function RightOfBackSlash(strTmp As String)
    While InStr(strTmp, "\") > 0
        strTmp = Right(strTmp, Len(strTmp) - InStr(strTmp, "\"))
    Wend
     RightOfBackSlash = strTmp
End Function
6. Formula 建立完成
7. 於Excel 的New Cell中 ,填上 =RightOfBaclSlash( "OldCell")
8. 完成, 自動取出最後一個檔名




2012年8月3日 星期五

使用GPO關閉Windows Services

最近防毒軟體新版的網頁防禦功能有點問題,將部份使用IP為網站的網頁,認定為惡意網站,相對的,網站 Redirect 的行為通通被防毒軟體檔下來,連開啟default.htm都不行,甚為困擾!

還好Windows GPO可管理 Services,將Services設為Disable 即可。在此稍稍記錄..以免忘記!!

1. 建立[Disable_SWI_Serivces]的GPO

2. 編輯[Disable_SWI_Service]的GPO:於[Computer Configuration] =>  Policies => Windows Settings => Security Settings => System Services => 選擇要Dsiable 的Services

3. 設定Service: 勾選[Define this policy setting]來啟動設定 =>設定狀態為[Disabled] =>確認並關閉編輯



4. 套用GPO到適當的OU

5. Windows Client 下: gpupdate /force 來立即更新




2012年5月14日 星期一

Lync 查找原始分機擁有者的方法

Lync Enterprise Voice 設定的分機重覆了,無法設定給新人,怎麼找到舊的設定者 ?

設定使用者的Lync Enterprise Voice 時,Line URI 欄位不得重覆,如果新人要設定時,會出現下列的錯誤訊息:
Filter failed to return unique result, "[SipAddress : sip: tester@demo.com] [LineURI : tel:+856277][PrivateLine : tel:856277]"
由此得知已有使用者使用過 tel:+856277,

可使用Get-CsUser -Filter {LineURI -eq "tel:+856277"} 的方式找出舊的擁有者或離職者.

其他 Filter 的相關Operator 可看參考

2012年5月7日 星期一

SAP Client 登入訊息伺服器錯誤

SAP GUI 710發生"登入平衡發生錯誤88: 無法連線至訊息伺服器(rc=9)" 的錯誤訊息。

必需檢查 c:\windows\system32\drivers\etc下的Services file, 是否有訊息伺服器使用的Port號: 
如: sapmsXXX  36<XX>/tcp