Как зарегистрировать visual studio 2008
Распространяемые пакеты Microsoft Visual C++ (Visual C++ Redistributable) содержат необходимые компоненты для запуска игр и программ, разработанных с помощью соответствующих версий Visual Studio и, как правило, нужны при ошибках вида «Запуск программы невозможен» так как файлы DLL с названиями, начинающимися с msvcr или msvcp отсутствуют на компьютере. Чаще всего требуются компоненты Visual Studio 2012, 2013 и 2015, но есть возможность загрузки и установки распространяемых пакетов Visual C++ 2005-2019.
В этой статье вы узнаете, как скачать распространяемые пакеты Visual C++ с сайта Майкрософт
Далее в инструкции способы скачать распространяемые компоненты Visual C++ для Windows 10, 8.1 и Windows 7, x64 и x86 (32-бит) официальным способом с сайта Майкрософт и путем установки из стороннего источника, о проблемах, с которыми можно столкнуться при установке и дополнительная информация, которая может оказаться полезной.
Загрузка распространяемых пакетов Visual C++ с сайта Майкрософт
Первый из способов скачать компоненты Visual C++ — официальный и, соответственно, самый безопасный. Для загрузки доступны следующие компоненты (при этом некоторые из них можно загрузить разными способами).
- Visual Studio 2015-2019 — при установке этого набора устанавливаются все необходимые компоненты Visual C++ 2015, 2017 и 2019 в рамках одного файла установщика.
- Visual Studio 2013 (Visual C++ 12.0)
- Visual Studio 2012 (Visual C++ 11.0)
- Visual Studio 2010 SP1
- Visual Studio 2008 SP1
Порядок загрузки компонентов будет следующим:
Также на сайте Майкрософт доступны отдельные страницы для загрузки распространяемых пакетов Microsoft Visual C++ список таких страниц далее:
После скачивания нужных компонентов Visual C++, запускаем загруженные файлы и проходим весь процесс установки.
При попытке установить Microsoft Visual Studio 2008 Team Foundation Server на компьютере, на котором установлен SQL Server 2008 с пакетом обновления 1 (SP1), установка завершается сбоем.
Способ
Для решения проблемы выполните следующие действия:
Загрузите Microsoft Visual Studio 2008 Team Foundation Server с пакетом обновления 1 (SP1) с веб-сайта корпорации Майкрософт по следующему адресу:
Скачайте Руководство по установке Team Foundation для Microsoft Visual Studio Team System 2008 на веб-сайте Майкрософт по следующему адресу:
В руководстве по установке, которое вы загрузили в действии 2, выполните первые пять шагов, описанных в разделе Инструкции: интеграция установки Team Foundation Server и пакета обновления 1 (SP1).Примечание. Чтобы найти этот раздел, разверните узел Установка Team Foundation Server и пакета обновления 1 (SP1 ) в левой области руководства по установке.
Откройте папку C:\MergeFolder, созданную в действии 4 раздела "инструкции: интеграция установки Team Foundation Server и пакета обновления 1 (SP1)".
Откройте файл Hcpackage. XML в блокноте.
Найдите следующий элемент:
<WQL Namespace = "\\.\root\Microsoft\SqlServer\ComputerManagement10" Query = "SELECT * FROM sqlserviceadvancedproperty, где ServiceName =" [% VSTF_SERVICENAME_MSSQL%] "AND PropertyName =" VERSION "AND PropertyStrValue> =" 10.00.1433 "и PropertyStrValue LIKE" 10,00 .% "" Action = "=" Count = "0"/>
Замените запись, найденную на шаге 6, на следующий элемент:
<WQL Namespace = "\\.\root\Microsoft\SqlServer\ComputerManagement10" Query = "SELECT * FROM sqlserviceadvancedproperty, где ServiceName =" [% VSTF_SERVICENAME_MSSQL%] "AND PropertyName =" VERSION "AND PropertyStrValue> =" 10.00.1433 "и PropertyStrValue LIKE" 10 .% "" Action = "=" Count = "0"/>
Найдите следующий элемент:
<WQL Namespace = "\\.\root\Microsoft\SqlServer\ComputerManagement10" Query = "SELECT * FROM sqlserviceadvancedproperty, где ServiceName =" [% VSTF_SERVICENAME_MSSQL%] "AND PropertyName =" VERSION "AND PropertyStrValue> =" 10.0.1433 "и PropertyStrValue LIKE" 10,0 .% "" Action = "=" Count = "0"/>
Замените элемент, найденный в действии 8, на следующий элемент:
<WQL Namespace = "\\.\root\Microsoft\SqlServer\ComputerManagement10" Query = "SELECT * FROM sqlserviceadvancedproperty, где ServiceName =" [% VSTF_SERVICENAME_MSSQL%] "AND PropertyName =" VERSION "AND PropertyStrValue> =" 10.0.1433 "и PropertyStrValue LIKE" 10 .% "" Action = "=" Count = "0"/>
Найдите следующий элемент:
<MsiProductVersionCheck prodID = "[% SQLServer2008%]" Action = "<" Version = "10.1"/>
Замените запись, найденную на шаге 10, на следующий элемент:
<MsiProductVersionCheck prodID = "[% SQLServer2008%]" действие = "<" Version = "10,2"/>
Сохраните файл Hcpackage. XML.
Запустите файл Setup. exe, чтобы установить Visual Studio 2008 Team Foundation Server с пакетом обновления 1 (SP1).
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
По истечению 90-дневного срока действия пробной версии Visual Studio запуск будет невозможен. Для регистрации Visual Studio необходимо выполнить следующие шаги:
1. Войти под учётной записью с правами администратора.
2. Открыть "Установка/удаление программ" в панели управления.
3. Выбрать "Microsoft Visual Studio Team System 2008 Team Suite - RUS" и нажать кнопку "Заменить/Удалить".
5. В появившемся окне надо ввести серийный номер: «PYHYP-WXB3B-B2CCM-V9DX9-VDY8T» и нажать "Обновить".
6. После можно запускать Visual Studio под любым пользователем на данном компьютере.
Приложение 7. Печать русских букв в среде Visual C++ 2008
При выводе информации на русском языке Visual C++ некорректно отображает русские символы.
using namespace std;
Ниже показан результат выполнения этой программы:
Рис. 12. Пример некорректного отображения русских букв
Проблема возникает из-за того, что используются различные кодировки текста для приложений Windows и консольных приложений. В качестве Windows-приложения выступает «Visual Studio», в котором набирается русский текст (слово «Привет»). В качестве консольного приложения выступает программа. В первом случае используется кодировка 1251, во втором – 866.
Есть несколько способов решения данный проблемы.
Способ 1
Способ 2
Использование функции «setlocale» позволяет частично решить проблему, а именно только корректного вывода информации. Сама по себе функция «setlocale» призвана установить региональные настройки. Использование региональных настроек позволяет корректно сравнивать слова, написанные на алфавите отличном от английского, открывать файлы, содержащие буквы национального алфавита, использовать понятные пользователю разделители разрядов в числе и разделителей даты, времени и т.д.
using namespace std;
cout << "Введите своё имя: ";
cout << "Вас зовут " << name << endl;
Способ 3
Производить ручное преобразование информации с использованием функций «OemToChar» (для вводимых данных) и «CharToOem» (для выводимых данных).
using namespace std;
Способ 4
Ещё одним способом изменения кодировки является использование функций «SetConsoleCP» и «SetConsoleOutputCP», которые изменяют кодировку входных и выходных данных соответственно.
using namespace std;
cout << "Введите своё имя: ";
cout << "Вас зовут " << name << endl;
Однако при запуске данного примера мы увидим следующее:
Некорректное отображение информации связано с тем, что выбран неправильный шрифт. Для того, чтобы изменить шрифт необходимо правой кнопкой мыши нажать на заголовок окна и выбрать меню «Свойства».
Выбрать шрифт «Lucida Console» и нажать «ОК».
Теперь те же данные отображаются и обрабатываются корректно.
При выполнении лабораторных работ следует использовать способ 2 или 4.
Ниже представлены выводы безотносительно лабораторных работ.
Важно понимать, что для приложений, написанных в Visual Studio, родной является кодировка Windows. Поэтому правильно будет конвертировать входные данные при вводе и обрабатывать в родной кодировке.
Наиболее правильным является ручное преобразование данных при вводе и выводе информации. Такая программа будет более сложная, но и более контролируема.
Наиболее легким и правильным вариантом является использование функций «SetConsoleCP», «SetConsoleOutputCP» и «setlocale». В этом случае ввод и вывод, а также обработка информации производятся автоматически. Недостатком этого способа можно считать ручное установление шрифта консоли.
Если программа обрабатывает только числовые данные, то наиболее простым и подходящим вариантом будет использование «setlocale».
regasm.exe / tlb / codebase component.dll
Переключатель / tlb для создания библиотеки типов в этом случае является обязательным, иначе я не смогу создавать объекты из этой сборки.
Вопрос в том, как мне настроить мой Visual Studio 2008 Setup-Project для регистрации этой сборки с вызовом regasm / tlb?
Это также отменяет регистрацию библиотеки при удалении.
Я вижу, что эти два метода входят в класс, который переопределяет System.Configuration.Install.Installer, а затем этот единственный класс добавляется в качестве основного вывода? Я не уверен, как добавить этот класс или эти действия в установщик. Будут ли они добавлены автоматически вместе со сборкой или мне нужно будет добавить действие? "I am not sure how to add this class or these actions to the installer." См. ссылку от Wolfwyrd в другом ответе, чтобы узнать, как чтобы добавить это в свой установочный пакет. Этот ответ представляет собой модификацию кода в связанной статье.- В вашем основном проекте (содержащем класс, который вы хотите зарегистрировать) щелкните правой кнопкой мыши файл проекта, выберите «Добавить / новый элемент» и выберите «Класс установщика». Назовите это что-то вроде clsRegisterDll.cs
- В появившемся конструкторе нажмите «Щелкните здесь, чтобы переключиться в представление кода» или щелкните правой кнопкой мыши файл clsRegisterDll.cs в проводнике решений и выберите «Просмотреть код».
Переопределите методы Install, Commit и Uninstall, добавив:
// Получаем местонахождение регазма строка regasmPath = System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory () + @ "regasm.exe"; // Получаем расположение нашей DLL string componentPath = typeof (RegisterAssembly) .Assembly.Location; // Выполняем регазм
System.Diagnostics.Process.Start (regasmPath, "/ codebase / tlb \" "+ componentPath +" \ "");
Замените / codebase / tlb на / u в действии удаления.
Сначала я попытался запустить regasm из процесса установки (до того, как увидел эту публикацию). Попытка запустить regasm и обработать все ошибки было проблематично - даже без попытки обработать повышенные привилегии для Windows 7.
Использование Runtime.InteropServices.RegistrationServices.RegisterAssembly было намного чище и обеспечивало гораздо лучший отлов ошибок.
Установщик Visual Studio выполняет только регистрацию класса COM, но не производит генерацию и регистрацию библиотеки типов (это то, что /tlb переключается в regasm.exe does ) по умолчанию. По крайней мере, в Visual Studio 2017 достаточно сгенерировать библиотеку типов на этапах после сборки библиотеки DLL для регистрации с помощью утилиты Tlbexp.exe .
Если проект установщика обнаруживает файл с расширением .tlb в том же каталоге и с тем же именем, что и устанавливаемая вами библиотека, он автоматически включает его в проект установки и выполняет шаги регистрации во время установки. Конечно, также можно сгенерировать файл .tlb вручную и включить его в проект установки (и установить для его свойства Register значение vsdrfCOM ).
Читайте также: