Попробуйте удалить автоматически созданную папку IISExpress, которая обычно находится в% userprofile% / Documents, например, C: \ Users [вы] \ Documents \ IISExpress
.Не волнуйтесь, VS должен создать его снова - правильно, на этот раз - как только вы снова запустите свое решение.
EDIT: командная строка для удаления папки:
rmdir /s /q "%userprofile%\Documents\IISExpress"
Вид - бросил m. Сообщение вместо этого:
protected override void WndProc(ref Message m) {
switch((WindowsMessagesFlags) m.Msg) {
case WindowsMessagesFlags.WM_DISPLAYCHANGE:
FixWindowSnapping();
break;
case WindowsMessagesFlags.WM_EXITSIZEMOVE:
SaveWindowProperties();
break;
case WindowsMessagesFlags.WM_MOVING:
KeepProperLocation(ref m);
break;
}
}
Причина Вам нужен бросок вообще, состоит в том, потому что в перечислениях C# не просто числа - они - числа, связанные с типом. Это препятствует тому, чтобы Вы делали (не бросая):
HttpStatusCode status = someWindowsMessageFlag;
Это - ясно хорошая вещь :) Когда Вы должны, однако, можно всегда идти "через" базовый тип (интервал в этом случае).
Что такое сообщение. Сообщение определяется как?
Я держу пари, что это - Int32.
Я также держу пари, что WindowsMessagesFlags является Вашим типом, но сообщение от платформы.
Что означает, что Вы используете свое собственное перечисление с созданным из платформы объектом, и конечно они собираются иметь некоторые несовместимости относительно типов.
Перечисление является сильным типом, не только числом, это - число с именем в контексте. Это имя, контекст, число, часть не непосредственно совместима только с числами, и вот почему необходимо бросить.