Получавам същия резултат, можете ли да ни дадете по-подробно описание как го оправихте, за нас новаците. PowerShell в полето Program / script? къде точно е това? и къде се намира папката на PS скриптове и т.н. Благодаря
Страхотно, това е добре да се знае. Благодаря много, Дан. :)
Здравей, аз получавам черен тапет. някакво решение?
ts = New-TimeSpan -Hours -2 -Minutes -30 # Брой часове и минути за добавяне / изваждане към датата. Настройте това, за да изместите датата на системата си до около GMT (мисля?)
$ now = ((Дата на получаване-секунда 00) + $ ts)
$ сега = $ сега. AddMinutes (- ($ now.minute% 10))
$ ширина = 550
$ level = "4d" # Нивото може да бъде 4d, 8d, 16d, 20d
$ numblocks = 4 # това очевидно съответства директно на нивото, запазете това точно като нивото, без 'd'
$ време = $ сега. ToString ( "HHmmss")
$ година = $ сега. ToString ( "гггг")
$ месец = $ сега. ToString ( "ММ")
$ day = $ сега. ToString ( "дд")
# Създайте папката My Pictures \ Himawari \, ако тя не съществува
$ outpath = [Environment]:: GetFolderPath ("MyPictures") + "\ Himawari \"
if (! (Test-Path -Path $ outpath))
{
[void] (Нова-елемент -ItemType директория -Path $ outpath)
}
# Името на файла, което ще бъде запазено:
#Изменете това, за да се натрупат файловете в директорията:
# $ outfile = "$ година $ месец $ ден" + "_" + $ време + ".jpg"
# Използвайте това, за да скриптът просто да съхранява само най-новия файл:
$ outfile = "latest.jpg"
$ url = " http://himawari8-dl.nict.go.jp/himawari8/img/D531106/$level/$width/$year/$month/$day/$time"
[Невалидни] [reflection.assembly]:: LoadWithPartialName ( "System. Windows. Форми")
[Невалидни] [reflection.assembly]:: LoadWithPartialName ( "System. Рисуване ")
$ image = Система за нов обект Рисуване. Bitmap (($ width * $ numblocks), ($ width * $ numblocks))
$ graphics = [Система. Рисуване. Graphics]:: FromImage ($ изображение)
$ графика. Clear ([System. Рисуване. Цвят черен)
за ($ y = 0; $ y -lt $ numblocks; $ У ++)
{
за ($ x = 0; $ x -lt $ numblocks; $ Х ++)
{
$ thisurl = $ url + "_" + [String] $ x + "_" + [String] $ y + ".png"
Извеждане на изход "Изтегляне: $ thisurl"
опитвам
{
$ request = [Система. Net. WebRequest]:: създадете ($ thisurl)
$ response = $ request.getResponse ()
$ HTTP_Status = [int] $ отговор. StatusCode
Ако ($ HTTP_Status -eq 200)
{
$ imgblock = [Система. Рисуване. Снимка]:: fromStream ($ response.getResponseStream ())
$ графика. DrawImage ($ imgblock, ($ x * $ ширина), ($ y * $ ширина), $ ширина, $ ширина)
$ Imgblock.dispose ()
$ Отговор. Близо()
}
}
улов
{
$ ErrorMessage = $ _. Изключение. съобщение
$ FailedItem = $ _. Изключение. Име на предмета
Изписване-изход "Неуспешно! $ ErrorMessage with $ FailedItem "
}
}
}
$ qualityEncoder = [Система. Рисуване. Imaging. Encoder]:: Качество
$ encoderParams = Система с нов обект. Рисуване. Imaging. ЕнкодерПараметри (1)
# Задайте тук ниво на качество JPEG: 0 - 100 (включително граници)
$ encoderParams. Param [0] = Система за нов обект. Рисуване. Imaging. EncoderParameter ($ qualityEncoder, 90)
$ jpegCodecInfo = [Система. Рисуване. Imaging. ImageCodecInfo]:: GetImageEncoders () | където {$ _. MimeType -eq 'image / jpeg'}
$ image.save (($ outpath + $ outfile), $ jpegCodecInfo, $ encoderParams)
$ Образ. Унищожаване ()
Изписване „Извеждане на тапет ...“
Set-ItemProperty -path "HKCU: Контролен панел \ Desktop" -имено Wallpaper-стойност ($ outpath + $ outfile)
Set-ItemProperty-path "HKCU: Контролен панел \ Desktop" -имен WallpaperStyle-стойност 6
Set-ItemProperty-path "HKCU: Control Panel \ Desktop" -име TileWallpaper-значение 0
Set-ItemProperty 'HKCU: \ Control Panel \ Colors' -name Background -Value "0 0 0"
# rundll32.exe user32.dll, UpdatePerUserSystemParameters
$ setwallpapersource = @ "
използвайки System. Runtime. InteropServices;
обществен клас тапет
{
публичен const int SetDesktopWallpaper = 20;
публичен const int UpdateIniFile = 0x01;
обществен const int SendWinIniChange = 0x02;
[DllImport ("user32.dll", SetLastError = true, CharSet = CharSet Автоматичен)]
частен статичен външен int SystemParametersInfo (int uAction, int uParam, string lpvParam, int fuWinIni);
публична статична невалидна SetWallpaper (път на низ)
{
SystemParametersInfo (SetDesktopWallpaper, 0, path, UpdateIniFile | SendWinIniChange);
}
}
"@
Add-Type -TypeDefinition $ setwallpapersource
[тапет]:: SetWallpaper (($ outpath + $ outfile))
Изписване „Изготвено“