1

Тема: HTA: слайд-шоу с музыкальным сопровождением

Запускать из папки с рисунками. Если в папку закинуть mp3-файл, он будет проигрываться во время слайд-шоу. Желательно, чтобы размер рисунков соответствовал текущему разрешению экрана. Рисунки будут бесконечно чередоваться в случайном порядке.

<html>
<head>
<title>Слайдшоу</title>
<hta:application applicationname=shideshow version=1.0
    caption=no sysmenu=no scroll=no scrollflat=no
    innerborder=no border=thin borderStyle=normal
    singleinstance=yes showintaskbar=yes
    minimizebutton=yes maximizebutton=no windowstate=maximize
    selection=no contextmenu=yes navigable=no>
<meta http-equiv=msthemecompatible content=yes>
<style>
    body{margin:0px;cursor:crosshair;}
    #image{width:100%;height:100%;filter:revealTrans(duration=1.5,transition=23)}
</style>
<script>
fso=new ActiveXObject('Scripting.fileSystemObject');
allfiles=new Enumerator(fso.getFolder('.').files);
imagefiles=new Array();
musicfiles=new Array();
window.document.onkeydown=stop;
window.onload=init;
function init() {
 countFiles();
 if(musicfiles.length)
 music.src=musicfiles[Math.ceil(Math.random()*musicfiles.length)-1];
 start();
}
function stop() {if(event.keyCode==27)window.close();else alert('Для выхода нажмите ESC    ');}
function start() {
 image.filters.revealTrans.transition=Math.ceil(Math.random()*24)-1;
 image.filters.revealTrans.Apply();
 image.src=imagefiles[Math.ceil(Math.random()*imagefiles.length)-1];
 image.filters.revealTrans.Play();
 setTimeout("start()",3000);
}
function countFiles() {
 while(!allfiles.atEnd()) {
  file=allfiles.item();
  switch(fso.getExtensionName(file.path).toLowerCase()){
   case'jpeg':case'jpg':case'png':case'gif':case'bmp':imagefiles[imagefiles.length]=file.name;break;
   case'mp3':case'wav':case'wave':musicfiles[musicfiles.length]=file.name;break;
  }
  allfiles.moveNext();
 }
 if(!imagefiles.length){alert('\nВ текущей директории риунки не найдены!\n\nЗапустите программу из папки с рисунками.  \n\nПоддерживаемые форматы: JPG, BMP, GIF и PNG.\n\n');close();}
}
</script>
<bgsound id=music loop=-1>
</head>
<body><img id=image><br></body>
</html>

Автор решения — medium.

Предложения в русском языке начинаются с большой буквы и заканчиваются точкой.
В названии ветки всегда должен быть указан язык программирования или среда исполнения скрипта, если это возможно.