저는 C# 응용 프로그램을 작성 중이며 시스템에 퀵타임이 설치되어 있고 어떤 버전인지 확인해야합니다. 이것은 Windows에 있습니다.C#으로 퀵타임 버전을 결정하십시오.
3
A
답변
6
는 빠른 Google 검색 this page에서 다음 코드를 설정 :
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * From Win32_Product Where Name = 'QuickTime'")
If colItems.Count = 0 Then
Wscript.Echo "QuickTime is not installed on this computer."
Else
For Each objItem in colItems
Wscript.Echo "QuickTime version: " & objItem.Version
Next
End If
"하지만 잠깐!" 당신은 "VBScript가 아니라 C#입니다!"라고 말합니다. 사실이지만 WMI 쿼리를 수행하는 VBScript입니다. 또 다른 빠른 Google 검색은 how to do WMI queries from C#입니다.
2
이 시도 :
using (RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"))
{
if (key != null)
{
foreach (string subKeyName in key.GetSubKeyNames())
{
using (RegistryKey subKey = key.OpenSubKey(subKeyName))
{
if (subKey == null) continue;
var displayName = subKey.GetValue("DisplayName") as string;
if (displayName == null || !displayName.Equals("QuickTime")) continue;
var version = subKey.GetValue("DisplayVersion");
Console.WriteLine(displayName);
Console.WriteLine(version);
}
}
}
}
영리한을, 참. VBScript를 모를지라도 C# 버전에서는 괜찮은 의사 코드입니다. –
고마워, 내가이 일을 할 수 있는지 알 겠어. – Zarxrax