설치된 모든 프로그램 및 업데이트는 레지스트리의 HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall 키에서 찾을 수 있습니다.제거 할 수있는 설치된 프로그램/업데이트 목록
그러나 설치된 프로그램과 설치된 업데이트를 어떻게 구분할 수 있습니까?
설치된 모든 프로그램 및 업데이트는 레지스트리의 HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Uninstall 키에서 찾을 수 있습니다.제거 할 수있는 설치된 프로그램/업데이트 목록
그러나 설치된 프로그램과 설치된 업데이트를 어떻게 구분할 수 있습니까?
나는 업데이트가 일반적으로 KB로 시작하는 (기본값) 값을 갖고 있다고 믿는다. 실제 설치에는 DisplayName이 있습니다. 또한 SystemComponent를 1로 설정하면 무시됩니다.
전화 MsiEnumProducts()는 시스템에 설치된 모든 제품의 제품 코드를 제공합니다. 설치된 각 제품에 대해 MsiGetProductInfo() 호출은 해당 제품에 대한 정보를 제공합니다.
이것은 레지스트리 기반 솔루션을 사용하는 것보다 더 직접적인 해결책입니다.
난 당신이 C#을에서 C++ 함수를 호출 할 수 있습니다 생각 :
좋은 시작점이 될 것이다.
이것은 합리적인 방법처럼 보입니다. 내 자신의 레지스트리를 검토하면 업데이트에 KB * 값 (기본값)이 있음을 확인합니다. – Corin