2011-12-26 4 views
1

지금 RegQueryInfoKey 함수로 인해 완전히 혼란스러워합니다. 누구든지 내게 손을 줄 수 있니?함수에 대한 세부 정보 RegQueryInfoKey?

이 함수에는 MSDN에 "lpClass"라는 매개 변수가 있습니다.이 매개 변수는 "키의 사용자 정의 클래스를받는 버퍼에 대한 포인터"로 선언됩니다. 또한 null 일 수도 있지만이 매개 변수의 사용법을 알고 싶습니다.

1.이 기능에 대해 "사용자 정의 클래스"를 어떻게 정의 할 수 있습니까? 언제해야합니까?

2.How 내가 값을 얻을 수있는 이러한 매개 변수 - "lpcMaxSubKeyLen", "lpcMaxValueNameLen"와 "lpcMaxValueLen"단순히 regedit.exe를 사용하여 지정된 키보고 대신 함수를 호출하여?

답변을 보내 주시면 감사하겠습니다. 감사

답변

3
  1. 클래스는 no real meaning와 문자열이고 (그것은 다른 API가 사용되지 않음)가 무의미 설정. 키의 1 % 미만 만 설정되고 설정되는 경우 일반적으로 "쉘"또는 "설정"또는 "클래스"문자열과 같은 문자열입니다. 그들은 (하위 항목을 열거하기 전에 메모리를 할당 할 그러나 당신은 항상 경우 더 큰 버퍼를 할당 할 준비를해야하므로 스레딩 문제가 여기에있을 경우 정보는 regedit를 정말 유용하지 않습니다

  2. , 그것은 응용 프로그램에서 사용됩니다 필요한)

+0

감사합니다. Anders, 많이 도와주세요. – ericchan1336

1

하나 개의 중대한 예외가있다 : 클래스 매개 변수는 사용자 암호 코드 NT 해시)에 사용되는 Syskey를을 (값 형성 키

HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Data 
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\GBG 
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\JD 
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\Skew1 

사용됩니다

참조 : http://moyix.blogspot.jp/2008/02/syskey-and-sam.html