甲骨文似乎已經做了一些不應該是可能的(恕我直言):)ServiceController的服務名稱太長構造
我已經從Oracle服務(我想,不要拍我,我只是開發商!)
名稱= 「甲骨文Eclipse企業軟件包節點管理器(C_Oracle_Middleware_Home_wlserver_12.1)」
所有87個字符。當我試圖確定服務使用System.ServiceProcess.ServiceController.get_ServicesDependedOn()調用依靠,我得到一個異常說明
「服務名的Oracle Eclipse企業軟件包節點管理器 (C_Oracle_Middleware_Home_wlserver_12.1)包含無效字符, 是空的,或太長(最大長度= 80)」
此名稱是服務註冊表項的名稱爲好。我的理解是,這個屬性(名稱在Win32_Service類),應該被限制爲80個字符。
當無效但成功安裝的服務上的構造函數barfs時,使ServiceController類變得非常困難。 -__-
我的快速解決方案,因爲我必須明天發運代碼,將任何服務名稱截斷爲80個字符,並將其稱爲「Hail Mary Fix」。
有沒有人找到解決這個問題的方法?我無法控制Windows似乎在這個領域有多鬆散,服務開發人員(Oracle)不遵守服務短名稱的80個字符限制。
幫我,歐比旺! ;)
剛剛意識到......這種方法不起作用。如果我截斷名稱以使構造函數正常工作,那麼獲取Property ServicesDependedOn的調用可能會失敗......現在正在測試...... – joebalt
是的,它在嘗試訪問屬性時會自動彈出塊。除了通過一些MS支持的方式修復服務短名稱中的明顯漏洞之外,似乎沒有辦法解決這個問題。 – joebalt
我沒有想法。 – joebalt