Estoy obteniendo el mismo resultado, ¿puede darnos una descripción más detallada de cómo lo solucionó? PowerShell en el campo Programa / script? ¿Dónde es eso exactamente? y dónde se encuentra la carpeta de scripts de PS, etc. Gracias

Impresionante, es bueno saberlo. Muchas gracias Dan. :)

Hola amigo, estoy recibiendo papel tapiz negro. ¿alguna solución?

ts = New-TimeSpan -Hours -2 -Minutes -30 # Número de horas y minutos para sumar / restar a la fecha. Ajusta esto para compensar la fecha de tu sistema alrededor de GMT (creo)
$ ahora = ((Obtener-Fecha-Segundo 00) + $ ts)
$ ahora = $ ahora. AddMinutes (- ($ now.minute% 10))

$ ancho = 550
$ level = "4d" #Level puede ser 4d, 8d, 16d, 20d
$ numblocks = 4 # esto aparentemente corresponde directamente con el nivel, mantenga esto exactamente igual que el nivel sin la 'd'
$ tiempo = $ ahora. ToString ("HHmmss")
$ año = $ ahora. ToString ("aaaa")
$ mes = $ ahora. ToString ("MM")
$ día = $ ahora. ToString ("dd")

#Cree la carpeta Mis imágenes \ Himawari \ si no existe

instagram viewer

$ outpath = [Medio ambiente]:: GetFolderPath ("MyPictures") + "\ Himawari \"
if (! (Test-Path -Path $ outpath))
{
[void] (New-Item -ItemType directory -Path $ outpath)
}

# El nombre de archivo que se guardará:
# Descomente esto para que los archivos se acumulen en el directorio:
# $ outfile = "$ año $ mes $ día" + "_" + $ tiempo + ".jpg"
#Utilice esto para que el script solo almacene el archivo más reciente:
$ outfile = "latest.jpg"

$ url = " http://himawari8-dl.nict.go.jp/himawari8/img/D531106/$level/$width/$year/$month/$day/$time"

[void] [reflection.assembly]:: LoadWithPartialName ("Sistema. Windows Formularios ")
[void] [reflection.assembly]:: LoadWithPartialName ("Sistema. Dibujo")

$ image = Sistema de objetos nuevos. Dibujo. Mapa de bits (($ ancho * $ numblocks), ($ ancho * $ numblocks))
$ graphics = [Sistema. Dibujo. Gráficos]:: FromImage ($ imagen)
$ gráficos. Borrar ([Sistema. Dibujo. De color negro)

para ($ y = 0; $ y -lt $ numblocks; $ y ++)
{
para ($ x = 0; $ x -lt $ numblocks; $ x ++)
{
$ thisurl = $ url + "_" + [Cadena] $ x + "_" + [Cadena] $ y + ".png"
Salida de escritura "Descarga: $ thisurl"

tratar
{

$ request = [Sistema. Red. WebRequest]:: crear ($ thisurl)
$ respuesta = $ request.getResponse ()
$ HTTP_Status = [int] $ respuesta. Código de estado
If ($ HTTP_Status -eq 200)
{
$ imgblock = [Sistema. Dibujo. Imagen]:: fromStream ($ response.getResponseStream ())
$ gráficos. DrawImage ($ imgblock, ($ x * $ ancho), ($ y * $ ancho), $ ancho, $ ancho)
$ imgblock.dispose ()
$ respuesta. Cerrar()
}
}
Captura
{
$ ErrorMessage = $ _. Excepción. Mensaje
$ FailedItem = $ _. Excepción. Nombre del árticulo
Salida de escritura "Falló! $ ErrorMessage con $ FailedItem "
}
}
}

$ qualityEncoder = [Sistema. Dibujo. Imágenes Codificador]:: Calidad
$ encoderParams = Sistema de objetos nuevos. Dibujo. Imágenes EncoderParameters (1)

# Establezca el nivel de calidad JPEG aquí: 0-100 (límites incluidos)
$ encoderParams. Parámetros [0] = Sistema de objetos nuevos. Dibujo. Imágenes EncoderParameter ($ qualityEncoder, 90)
$ jpegCodecInfo = [Sistema. Dibujo. Imágenes ImageCodecInfo]:: GetImageEncoders () | donde {$ _. MimeType -eq 'image / jpeg'}

$ image.save (($ outpath + $ outfile), $ jpegCodecInfo, $ encoderParams)
$ imagen. Disponer()

Salida de escritura "Establecer fondo de pantalla ..."
Set-ItemProperty -path "HKCU: Control Panel \ Desktop" -name Wallpaper -value ($ outpath + $ outfile)
Set-ItemProperty -path "HKCU: Control Panel \ Desktop" -name WallpaperStyle -value 6
Set-ItemProperty -path "HKCU: Panel de control \ Escritorio" -name TileWallpaper -value 0
Set-ItemProperty 'HKCU: \ Panel de control \ Colores' -nombre Fondo -Valor "0 0 0"
# rundll32.exe user32.dll, UpdatePerUserSystemParameters

$ setwallpapersource = @ "
utilizando el sistema. Tiempo de ejecución. InteropServices;
fondos de escritorio de clase pública
{
public const int SetDesktopWallpaper = 20;
public const int UpdateIniFile = 0x01;
public const int SendWinIniChange = 0x02;
[DllImport ("user32.dll", SetLastError = true, CharSet = CharSet. Auto)]
privado externo externo int SystemParametersInfo (int uAction, int uParam, string lpvParam, int fuWinIni);
SetWallpaper vacío público estático (ruta de cadena)
{
SystemParametersInfo (SetDesktopWallpaper, 0, ruta, UpdateIniFile | SendWinIniChange);
}
}
"@
Add-Type -TypeDefinition $ setwallpapersource
[fondo de pantalla]:: SetWallpaper (($ outpath + $ outfile))

Salida de escritura "Listo"