Como posso obter o ícone de tipo de arquivo que o Windows Explorer mostra?

primeira pergunta aqui. Estou desenvolvendo um programa em C # (.NET 3.5) que exibe arquivos em um listview. Eu gostaria de ter o "ícone grande" exibir o ícone que o Windows Explorer usa para esse tipo de arquivo, caso contrário, eu vou ter que usar algum código existente como este:

        private int getFileTypeIconIndex(string fileName)
    {
        string fileLocation = Application.StartupPath + "\\Quarantine\\" + fileName;
        FileInfo fi = new FileInfo(fileLocation);
        switch (fi.Extension)
        {
            case ".pdf":
                return 1;
            case ".doc": case ".docx": case ".docm": case ".dotx":case ".dotm": case ".dot":case ".wpd": case ".wps":
                return 2;
            default:
                return 0;
        }

    }

O código acima retorna um inteiro que é usado para selecionar um ícone de um imagelist que eu preenchi com alguns ícones comuns. Ele funciona bem, mas eu preciso adicionar todas as extensões sob o sol! Existe uma maneira melhor? Obrigado!

questionAnswers(4)

yourAnswerToTheQuestion