今天下班前,客戶來閒聊最近行內週邊系統發生的一個未知原因應用程式問題,問題發生在powershell呼叫webservice,自己以前沒試過從Powershell呼叫webservice,晚上刷好Apple Pay賺500哩之後來試試。
[Powershell]在Powershell中呼叫Webservice
- 1442
- 0
- Power Shell
今天下班前,客戶來閒聊最近行內週邊系統發生的一個未知原因應用程式問題,問題發生在powershell呼叫webservice,自己以前沒試過從Powershell呼叫webservice,晚上刷好Apple Pay賺500哩之後來試試。
大致的作法是利用.NET反射(Reflection)載入.NET System.Data組件,建立SqlClient實作,然後就是你我熟悉的SqlCommand。
如果管理Windows Server的Developer或是SE/SP剛好也略懂C#,來試試在Powershell裡頭寫C#。
以前只會用伺服器管理員(Server manager)UI操作新增Role(IIS)或Feature(IIS Console),這次改用管理Windows的官方指定語言Powershell來新增IIS 角色及IIS管理工具。
在IIS建立網站除了用Installer Projects安裝程式外,也常用IIS管理員GUI操作,再來就是使用appcmd.exe程式來自動化,這次筆記自動化的powershell方式。
啟用完MSMQ功能,接著要新增MSMQ佇列。
以前新增MSMQ佇列也都用Windows GUI操作,有時候一口氣要在很多台伺服器各新增10組MSMQ佇列就還蠻花力氣的,如果也要個別指定使用權限,會讓設定的人想要深呼吸,這時候自動化的Poweshell 指令碼再度派上用場!
最近要把MSMQ作為Log產出目的地,因此需要啟用MSMQ(Add Windows Feature)。
不同Windows OS版本(Windows7/8/10/Windows Server 2008/2012)的GUI操作也有些不同,常常Developer光找啟動的位置就會氣死倫,這時候自動化Poweshell 指令碼就可以派上用場。
這禮拜third-party提供了新的dll參考元件更新,沒預料是最新的.NET 4.6版本,但原本負責系統提供給客戶的工具是.NET 4.0,沒辦法引用客戶採購的元件,因此需要把工具重新用4.6編譯。
佈署前,生產環境也是需要確認,從msdn及google找到幾種取得機器上的.NET Framework有4個方式,今天先筆記3種,下一篇筆記用.NET程式的作法。
最近客戶端發生了Windows Server 2008 R2 連續497天未重開機而產生的連線異常問題(KB2553549),
為了查詢最近Windows Server 開關機的紀錄,筆記一下兩種作法:
利用排程搭配Power Shell自動執行選取的Windows Update項目