Tabla de hash: ordena por orden de entrada

Tengo una tabla hash aquí y eventualmente la envío a una hoja de cálculo de Excel, pero el problema parece ser la forma en que el sistema clasifica la tabla hash de manera predeterminada. Quiero que devuelva las máquinas en el mismo orden en que se ingresaron, de la forma en que funciona actualmente, aparece un cuadro emergente y pega todos los nombres de sus máquinas para que todos estén en la memoria antes deforeach lazo. Anteriormente estaba ordenando esto por el tiempo de actividad más largo, pero ahora debe ser de la misma manera en que se ingresan. Mi pensamiento inicial es crear otra tabla hash y capturarlas en el mismo orden en comparación con el$machineList variable, pero eso incluso podría dejarme en la misma posición. Traté de buscar pero no pude encontrar información sobre la forma predeterminada en que se ordenan las tablas hash.

¿Algunas ideas?

$machineUptime = @{}
foreach($machine in $machineList){
    if(Test-Connection $machine -Count 1 -Quiet){
        try{
            $logonUser = #gets the logged on user
            $systemUptime = #gets the wmi property for uptime

            if($logonUser -eq $null){
                $logonUser = "No Users Logged on"
            }

            $machineUptime[$machine] = "$systemUptime - $logonUser"
        }
        catch{
            Write-Error $_
            $machineUptime[$machine] = "Error retrieving uptime"
        }
    }
    else{
        $machineUptime[$machine] = "Offline"
    }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta