: 1) 쓰기가 낮은 무결성하여 프로세스를 실행하는 사용자의 독립 프로세스 2)는 Windows에서 표준 폴더가 있습니까?낮은 무결성 프로세스와 Windows 서비스 모두에서 로그 파일을 저장할 위치를 지정할 수 있습니까? 한마디로
스택 오버플로에는 로그 파일 위치에 대한 여러 가지 질문이 있지만 문제는 약간 다릅니다.
내 응용 프로그램에는 IE 아래에서 실행되므로 낮은 무결성을 가진 ActiveX와 Windows 서비스의 두 가지 주요 구성 요소가 있습니다. 두 가지 모두 로그를 생성하며 모든 것을 동일한 위치에 저장하려고합니다.
SHGetKnownFolderPath(FOLDERID_LocalAppDataLow)
을 사용해 보았습니다. 그것은 ActiveX에 대해서는 문제가 없지만 Windows는 내 서비스 용으로 다음 폴더를 반환합니다 : C:\Windows\SysWOW64\config\systemprofile\AppData\LocalLow\
. 그것은 여러 가지 이유로 나쁘다.
낮은 무결성 프로세스에는 쓰기 권한이 없기 때문에 %AllUsersProfile%
또는 % APPDATA %를 사용할 수 없습니다.
내 서비스에서 현재 로그온 한 사용자를 찾아 수동으로 LocalLow 폴더로 가져 오는 방법에 대해 생각해 보았지만 0 개 또는 그 이상일 수 있으므로 문제가 될 수 있습니다.
시스템 로그는 어떻게됩니까? 직접 파일을 별도로 작성해야합니까? –
'% temp %'폴더가 필요합니까? – Sadique
@Acme : 임시 폴더도 사용자 이름에 종속되지 않습니까? 내 Win7 x64 컴퓨터에서 % temp %는 "C : \ Users \ pfranco \ AppData \ Local \ Temp"와 같습니다. –