Исключение Winform-приложения DragDrop происходит за пределами IDE - PullRequest
1 голос
/ 23 августа 2009

Мое приложение winform завершается с ошибкой при запуске вне среды IDE с исключением перетаскивания. Ошибка не возникает при запуске изнутри ide (VS2008). Как я могу отследить это. Я видел упоминание об использовании JIT в окне ошибок, отображаемом после ошибки - поможет ли это отследить мою проблему?

1 Ответ

1 голос
/ 24 августа 2009

Не знаю, будет ли это полезно, но ... некоторое время назад я получал DragDropException, когда мое приложение WinForms запускалось на флэш-накопителе, а не в полной системе. Форма, генерирующая ошибку, не имела функции перетаскивания. Я никогда не понимал проблему, но я видел, что UserControl в этой форме по умолчанию излишне по умолчанию AllowDrop = true. Как только я выключил это, проблема ушла.

Если ваша форма предназначена для поддержки перетаскивания, я бы посмотрел, в каком потоке создается экземпляр формы, генерирующей исключение. Насколько я понимаю, Microsoft реализует перетаскивание на основе COM, которое должно быть инициализировано в потоке STA. Помещение атрибута [STAThread] до точки входа вашей программы выполнит это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...