2013-04-26 2 views
0

빠른 요약 : Powershell 또는 C#을 사용하여 Windows 7에서 사용자 지정 테마가 단일 이미지를 남기거나 백그라운드에서 슬라이드 쇼를 수행 할 것인지를 어떻게 알 수 있습니까? ?Powershell - Win 7 슬라이드 쇼 상태보기

(관련 질문하지만 꽤 같은 및 응답하지 :

관련 자원, 그러나 도울 수 없었다 :

)

문제는 거의가 같은 소리 무엇이며, 그것은 너무 많은 문제가되는 이유는 확실하지 않다.

Win8에서 원본 이미지를 얻으려면 Andy의 게시물 (Powershell script from shortcut to change desktop)을 기반으로하는 기술을 사용할 수 있습니다. 거기에서 그리고 내가 말할 수있는 것부터, 슬라이드 쇼는 항상 TranscodedWallpaper.jpg에서 끝나며, 단일 이미지로 떨어지 자마자 이미지의 이름으로 전환됩니다. 그래서 약간 라운드에 대한,하지만 우리가하면 슬라이드 쇼가

Win7에 나는 확인할 수에 WallpaperSource

Get-ItemProperty 'HKCU:\Software\Microsoft\Internet Explorer\Desktop\General' WallpaperSource 

이지만 슬라이드 쇼가있는 경우에만 나에게 현재의 이미지를 제공하는 경우 말해, 수

Get-ItemProperty -path 'HKCU:Control Panel\Desktop' -name 'Wallpaper' 

복귀 하나만이 남아 이미지없이 시간 간격이 존재하더라도, 매번 TranscodedWallpaper.jpg 후 'Custom.theme'를 사용. (위의 명령이나 Andy의 스크립트를 사용하는 경우)

프로세스 모니터를 실행하여 어떤 Windows가 실행되는지 파악하고 'C : \ Windows \ Globalization \ MCT \ MCT-US \ 바탕 화면 \ desktop.ini '하지만 사용할 수있는 마크를 남기지 않는 것 같습니다. 하나의 이미지를 사용자 정의 테마 대 - - 슬라이드 쇼를 그것은 나를 우리는 사용자 정의 테마에있는 경우 셔플 및 간격 필드 만도 변경되었습니다

Get-ItemProperty -path 'HKCU:Control Panel\Personalization\Desktop Slideshow' 

을 찾을 수있었습니다.

나는 아주 명백한 (Windows와 Powershell의이 끝을 노리는 것에 새로운) 것이 없다고 확신한다. 어떤 생각이든?

답변

2

잠시 생각했지만 알아 냈습니다 ( 해결 방법).

C:\Users\[...]\AppData\Roaming\Microsoft\Windows\Themes\slideshow.ini 

'슬라이드 쇼'에서 한 장의 사진이이 파일이 비어, 그래서 .WallpaperSource를 사용하여 올바른 배경 이미지입니다됩니다 : 다른 사람이 가로 지르는 경우, 윈도우 7은 INI 파일이 있습니다. 슬라이드 쇼에 여러 개의 이미지가있는 경우에도이 파일에는 내용 (배경을 전환하는 정보)이 있습니다.WallpaperSource는 올바른 이미지처럼 보입니다. 간격을 기준으로 시간이 지남에 따라 변경 될 가능성이 큽니다.

$doesFileExist = Test-Path $PATH_TO_THE_INI_FILE 
if ($doesFileExist){ 
    $iniContent = Get_Content $PATH_TO_THE_INI_FILE 
    if ($iniContent){ 
     # This was a slideshow 
    } 
    else { 
     # This does not seem to be a slideshow 
    } 
} 

: 내가 볼 수있는 (나는이 규칙을 나누기 상황에 걸쳐 실행하고 나는 드로잉 보드로 돌아가까지) 슬라이드 쇼 당신이있는 경우, 볼에서 짧은에서

, (물론 이것은 Windows 7 기능의 빌드에만 해당되며, 모든 사용자 정의 코드와 응용 프로그램에 어떻게 반응 할 것인지 전혀 알 수 없습니다.) 그리고 Win 8 해결책은 초기 질문에 올라와있다.