Я хочу получить программное обеспечение, установленное с удаленного хоста. Я хочу получить детали из реестра, а не из Win32_Product.Я использую wmi. Я попробовал так много примеров из сети. Большинство из них находятся в vb.net, я нуждаюсь в C#. может ли один разместить код ..Получение установленных программ с удаленного хоста с помощью wmi
Это код, я использую
string [email protected]"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\";
string keyToRead= "DisplayName";
ConnectionOptions oConn = new ConnectionOptions();
oConn.Username = "Ravinilson";
oConn.Password = "ravi";
ManagementScope scope = new ManagementScope(@"//" + RemotePC + @"/root/default", oConn);
ManagementClass registry = new ManagementClass(scope, new ManagementPath("StdRegProv"), null);
// Returns a specific value for a specified key
ManagementBaseObject inParams = registry.GetMethodParameters("GetStringValue");
nParams["sSubKeyName"] = regKeyToGet;
inParams["sValueName"] = keyToRead;
ManagementBaseObject outParams = registry.InvokeMethod("GetStringValue", inParams, null);
return outParams["sValue"].ToString();
но он дает «ссылка на объект не указывает на экземпляр объекта» ошибка. Я получаю установленные приложения из «Win32_Product». Но он возвращает только продукты Windows. Вот почему я хочу получить данные из реестра «SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall».
Вы были здесь в течение семи месяцев, задавали девять вопросов, никогда не принимали ответа, никогда не подавали голоса, и здесь вы в основном просите нас дать вам код без каких-либо усилий с вашей стороны. Я боюсь, что это не закончится хорошо ... –
oh sorry..если я получил ответ от u, я просто использовал его. Я не знаю, что я должен его принять. – Nagendra
Почему в мире вы не хотели бы использовать документированный способ сделать это? Не ходите на охоту через реестр за вещами. И это чрезвычайно тривиально, чтобы преобразовать код VB.NET в код C#. Вам нужно научиться тратить немного усилий на себя, прежде чем отправлять вопросы. –