>>422
ExplorerItemFocus(Up:=False) {
  For Window In ComObjCreate("Shell.Application").Windows
  {
    If (WinExist("A") != Window.Hwnd)
      Continue
    
    Items := []
    For Item In Window.Document.Folder.Items()
      Items.Push(Item)
    
    FocusedItem := Window.Document.FocusedItem
    For Index, Item In Items
    {
      If (FocusedItem.Path = Item.Path) {
        FocusItem := Up ? Items[Index-1] : Items[Index+1]
        Window.Document.SelectItem(FocusItem, 0x15)
        Break
      }
    }
  }
}

COMオブジェでやってみたけどSystem32だと数秒フリーズするくらい重い