Я пытаюсь использовать TFSSnapin в PowerShell из кода C#, используя System.Management.Automation из PowerShell SDK, однако я хотел бы скомпилировать его с помощью «AnyCPU». Когда я пытаюсь отладить его в любом процессоре, я получаю сообщение «No Plugins Registered», я пытаюсь отладить его в режиме x86, и он работает нормально. В любом случае, чтобы получить плагины, зарегистрированные на x64 PowerShell, чтобы я мог использовать AnyCPU? Или мне просто не повезло?Нет ли TFS Snapin для PowerShell на x64?
ответ
Нет. И это не может быть изменено до TFS 2010 Beta 2 как можно скорее. См: Why is the TFS Powershell snapin marked 32-bit only?
Убедитесь, что вы запустили 64-разрядную версию InstallUtil для установки информации snapin в 64-разрядный реестр (а не в раздел реестра Wow). Если вы запустите 64-битную командную строку Visual Studio, она должна иметь путь, предназначенный для выполнения 64-разрядной версии installutil.exe.
Это теперь возможно
Выполните следующую строку в 64-битном PowerShell командной строки
copy
HKLM:\SOFTWARE\Wow6432Node\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell
HKLM:\SOFTWARE\Microsoft\PowerShell\1\PowerShellSnapIns\Microsoft.TeamFoundation.PowerShell
-r
Затем добавьте PSSnapin для Microsoft.TeamFoundation.PowerShell
.
Это помогло мне. Благодаря! –
Я не могу использовать 64-разрядный InstallUtil, поскольку он просто говорит, что dll - неправильный формат. Кажется, у них только 32-битная dll, так что, возможно, я просто не могу этого сделать. – Alex
спасибо, хотя, я ценю помощь. – Alex
Это странно. Мы создаем Snapin PSCX как AnyCPU, и я могу его зарегистрировать и использовать в 64-битной подсказке Powershell. –