Типы MIME в реестре Windows - PullRequest
       3

Типы MIME в реестре Windows

4 голосов
/ 09 августа 2010

В моей службе Windows, созданной на C #, я пытаюсь установить типы пантомимы на основе расширений файлов, как показано ниже

static string GetMimeType(string fileName)
        {
            string mimeType = "application/unknown";
            string ext = Path.GetExtension(fileName).ToLower();

            Microsoft.Win32.RegistryKey regKey = Microsoft.Win32.Registry.ClassesRoot.OpenSubKey(ext);

            if (regKey != null && regKey.GetValue("Content Type") != null)
                mimeType = regKey.GetValue("Content Type").ToString();

            return mimeType;
        } 

На рабочем сервере у нас не установлен Acrobat или слово для очевидногопричины.Как мне обойти это?Есть ли другой способ установки типов пантомимы?Если нет, то как мне создать эти типы MIME на рабочем сервере, не устанавливая эти программы.

Заранее спасибо

1 Ответ

8 голосов
/ 10 августа 2010

Вы можете просто создать записи реестра для этих типов, чтобы ваш код читал

  • в regedit, перейдите в HKEY_LOCAL_MACHINE \ Software \ Classes (центральная часть HKCR)
  • rightнажмите Classes, New Key - назовите его .pdf
  • щелкните правой кнопкой мыши справа, New String - «Тип содержимого», «application / pdf»

или вы можете найтикомпьютер, на котором установлен Acrobat, а затем используется regedit для экспорта ключа .pdf в сценарий реестра, который можно импортировать на ваш сервер.В итоге у вас будет много сценариев: вы можете использовать блокнот для их совместного редактирования, но убедитесь, что вы не меняете кодировку при сохранении - это должен быть Unicode!

Вы также можете добавить списокотображений в вашем приложении, но IIS не будет обслуживать статический контент, если у него нет типа контента, поэтому вам, вероятно, следует добавить их и в реестр, если вам когда-нибудь понадобится обслуживать статические PDF-файлы.

...