2011-09-08 2 views
2

나는 거의 my last question에 대한 대답을 가지고 있지만 도움이 필요하다.dll 파일에 대한 레지스트리 데이터 참조의 음수 오프셋 이해

Windows 방화벽 규칙 (최대 Vista 및)를 레지스트리에 저장됩니다 HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules

예 규칙 : v2.0|Action=Allow|Active=TRUE|Dir=Out|Protocol=6|Profile=Domain|RPort=5722|App=%SystemRoot%\system32\dfsr.exe|Svc=Dfsr|[email protected],-32257|[email protected],-32260|[email protected],-32252|Edge=FALSE|

내가 디코딩 할 필요가있는 필드, 나는 그것이 C:\WINDOWS\System32\FirewallAPI.dll를 참조 생각 [email protected],-32252

하지만, 나는 그 숫자가 어떻게 작동하는지 알 수 없다. 파일 크기는 ~ 400KB입니다.

부호가없는 short 인 것처럼 보이는 몇 가지 변형을 시도했는데, 음수가 아닌 척하면서 끝에서부터 오프셋 된 것처럼 보이지만 16 진수 편집기로 위치에 도착했을 때 제대로 보이지 않았습니다.

누군가 내게 아이디어를 줄 수 있습니까? 이 숫자가 의미하는 것은 무엇입니까? DLL 파일에 대해서는 거의 알지 못합니다. 내가 아는 모든 것에 대한 섹션 번호 일 수도 있습니다.

예상되는 텍스트를 검색해 보았지만 문자 당 바이트가 아니거나 UTF-16이 아닌 것으로 보입니다.

+0

문자열 리소스 ID를 나타내며 음수 인 경우 음수가 아닌 상대적인 숫자가됩니다. LoadLibrary + LoadString + FreeLibrary를 읽으려면 winapi를 사용해야합니다. –

답변

2

레이몬드 커버 here. 양수는 자원 지수입니다. 음수 기호 (빼기 기호를 제거한 후)는 자원 식별자입니다.

관련 문제