SOLID 3.5 への移行
SOLID 3.5 から使用する Visual Studio Shell が 2015 に変更になります。 これに伴い、拡張機能やビルドスクリプトに修正が必要になります。
新規インストールやアップデートの方法に変更はありません。インストール を参照してください。
既存のプロジェクトやソリューション
変更の必要はありません。
既存のソースコード
変更の必要はありません。
拡張機能
ユーザー独自の拡張機能を構築している場合、VSIXプロジェクトに以下の変更が必要になります。
source.extension.vsixmanifest
を編集し SOLID-IDE 2.0 をインストール対象に変更します。
<Installation>
- <InstallationTarget Id="SOLID-IDE" Version="[1.0]" />
+ <InstallationTarget Id="SOLID-IDE" Version="[2.0]" />
</Installation>
スクリプト
スクリプトを実行するには、以下の変更が必要になります。
solid-os/tools/Scripting/IronPython/Modules/IDE/IDE.psm1
に以下の変更を追加します。
[IDE.Managed.IDE]::Initialize()
+$baseKey = $null
+$subKey = $null
+try {
+ $baseKey = [Microsoft.Win32.RegistryKey]::OpenBaseKey([Microsoft.Win32.RegistryHive]::LocalMachine, [Microsoft.Win32.RegistryView]::Registry32)
+ $subKey = $baseKey.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{66704924-9C04-4EAA-B36C-2C03C95F9669}')
+ if ($null -ne $subKey) {
+ [IDE.Managed.IDE]::SetIDEInfo('PARTNER-IDE', '2.0', '.ptsln')
+ }
+} catch {
+} finally {
+ if ($null -ne $subKey) {
+ $subKey.Dispose()
+ }
+ if ($null -ne $baseKey) {
+ $baseKey.Dispose()
+ }
+}
+
Register-EngineEvent -SourceIdentifier PowerShell.Exiting -SupportEvent -Action {
[IDE.Managed.IDE]::Close()
}
solid-os/tools/Scripting/IronPython/ide.py
に以下の変更を追加します。
def initialize():
if not IDE.Initialize() :
return False
+
+ from Microsoft.Win32 import RegistryKey, RegistryHive, RegistryView
+
+ base_key = None
+ sub_key = None
+ try:
+ base_key = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32)
+ sub_key = base_key.OpenSubKey(r'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{66704924-9C04-4EAA-B36C-2C03C95F9669}')
+ if sub_key is not None:
+ IDE.SetIDEInfo('PARTNER-IDE', '2.0', '.ptsln')
+ except:
+ pass
+ finally:
+ if sub_key is not None:
+ sub_key.Dispose()
+ if base_key is not None:
+ base_key.Dispose()
return True