XSplit 1.5.1403.1907 を Windows 2000で動かそうとしてみた話
ゲーム中の画面などをキャプチャ配信するのに便利なツール XSplit ですが、
XSplit - 最新バージョンのダウンロード
なんということでしょう!
最新バージョンではVista以前のOSがサポートを切られてしまいました!
だが、うちのWindows 2000は魔改造されている…
.Net 3.5で動く以上、動くに違いない!
というわけで、MSIを書き換えて動かしてみました
実行すると
%UserProfile%\Application Data\SplitMediaLabs\XSplit Gamecaster にインストーラーが展開されます
そこでMSIを書き換えます。
LaunchConditionの
( Version9X OR VersionNT64 OR ( VersionNT AND ((VersionNT <> 500) OR ((VersionNT = 500) AND (ServicePackLevel >= 1))) AND ((VersionNT <> 500) OR ((VersionNT = 500) AND (ServicePackLevel <> 1))) AND ((VersionNT <> 500) OR ((VersionNT = 500) AND (ServicePackLevel <> 2))) AND ((VersionNT <> 500) OR ((VersionNT = 500) AND (ServicePackLevel <> 3))) AND ((VersionNT <> 500) OR ((VersionNT = 500) AND (ServicePackLevel <> 4))) AND (((VersionNT <> 501) OR ((VersionNT = 501) AND (ServicePackLevel >= 1))) OR VersionNT64) AND (((VersionNT <> 501) OR ((VersionNT = 501) AND (ServicePackLevel <> 1))) OR VersionNT64) AND (((VersionNT <> 501) OR ((VersionNT = 501) AND (ServicePackLevel <> 2))) OR VersionNT64) AND (((VersionNT <> 501) OR ((VersionNT = 501) AND (ServicePackLevel <> 3))) OR VersionNT64) AND (((VersionNT <> 502) OR ((VersionNT = 502) AND (ServicePackLevel >= 1))) OR VersionNT64) AND (((VersionNT <> 502) OR ((VersionNT = 502) AND (ServicePackLevel <> 1))) OR VersionNT64) AND (((VersionNT <> 502) OR ((VersionNT = 502) AND (ServicePackLevel <> 2))) OR VersionNT64) AND (((VersionNT <> 600) OR (((VersionNT = 600) AND (ServicePackLevel >= 1)) OR (MsiNTProductType <> 1))) OR VersionNT64) AND (((VersionNT <> 600) OR (((VersionNT = 600) AND (ServicePackLevel <> 1)) OR (MsiNTProductType <> 1))) OR VersionNT64) AND (((VersionNT <> 600) OR (((VersionNT = 600) AND (ServicePackLevel <> 2)) OR (MsiNTProductType <> 1))) OR VersionNT64) ) ) |
を1にするだけっすね・ω・
不可能はない!
と、ドヤ顔したんですが
起動したところ…COMコンポーネントがないって怒られちゃいました
Exception Message: Retrieving the COM class factory for component with CLSID {17E25DBD-F869-46CB-AF7D-C000C0AD9453} failed due to the following error: 80040154. |
どうやら、SplitMediaLabs\XSplit Gamecaster\cef\CefCOM.ax が原因みたいなので手動で登録してみましょう
き、起動した!
だが、なんかセキュリティ的な理由でパスワードリセットしてくれ!って言われた
Exception Message: Retrieving the COM class factory for component with CLSID {17E25DBD-F869-46CB-AF7D-C000C0AD9453} failed due to the following error: 80040154. |
次は XSplitBroadcaster.dll っぽいですね
Exception Source: XSplit.Gamecaster Exception Type: System.EntryPointNotFoundException Exception Message: Unable to find an entry point named 'CreateProcessWithTokenW' in DLL 'advapi32'. |
そして、CreateProcessWithTokenW というVista以降の関数を使われてるところでとりあえず詰み。
CreateProcessWithLogonW に置き換えるような処理入れないとだめっぽいので持ち越しになりましたとさ。
とりあえず。Vistaなら動くんじゃね?って結論に
後、VHMediaCOMExt.dll が DirectX 11を使ってるので、XP以前だと動かない可能性も
Comments