1
Windows 이벤트 뷰어에서 사용자 지정보기를 만드는 API가 있습니까?API를 사용하여 Windows 이벤트 뷰어에서 사용자 지정보기를 만드는 방법은 무엇입니까?
NSIS를 사용하는 설치에서 이것을 수행하고 싶습니다. 하지만 다른 방법이 없다면 플러그인을 작성할 것입니다.
Windows 이벤트 뷰어에서 사용자 지정보기를 만드는 API가 있습니까?API를 사용하여 Windows 이벤트 뷰어에서 사용자 지정보기를 만드는 방법은 무엇입니까?
NSIS를 사용하는 설치에서 이것을 수행하고 싶습니다. 하지만 다른 방법이 없다면 플러그인을 작성할 것입니다.
문제는 NSIS가 아니라 the way the Event Log works이므로 메시지 테이블 DLL을 시스템 어딘가에 설치하고 레지스트리에 등록해야합니다. 이 DLL은 로그를 볼 때 이벤트 로그 뷰어에서 사용하므로 메시지를 기록 할 때 사용되지 않으므로 시스템에 남아 있어야합니다. 이 디자인은 설치 프로그램에서 정말로 문제가됩니다.
$ temp 또는 $ exedir에 일반 텍스트 파일로 로그온하는 것이 더 나을 것입니다.
당신이 정말로 이벤트 로그를 사용하려면 당신이 해킹을 신경 쓰지 않을 경우 수 :
NSIS co de는 다음과 같이 보입니다 :
section
System::Call 'advapi32::RegisterEventSource(i0,t "Software Installation")i.r0'
#TODO: Check if $0 == 0 and display error message
System::Call '*(i,&t1000 "Hello world")i.r1'
IntOp $2 $1 + 4
System::Call '*$1(ir2)'
System::Call 'advapi32::ReportEvent(ir0,i ${EVENTLOG_ERROR_TYPE},i0,i 101,i0,i1,i0,ir1,i0)i'
System::Free $1
System::Call 'advapi32::DeregisterEventSource(ir0)'
sectionend