我正在使用位置服务的应用程序。如果我正在调试,该应用程序工作正常。如果我在没有调试的情况下启动(在重建后),在第一次运行时它会在请求使用位置服务的授权时崩溃。会发生什么情况是,如果让它坐下来,并显示消息框足够长的时间(5-10秒),就会崩溃。如果我在没有再次调试的情况下启动它,它仍然可以正常工作(尽管它不会再显示消息框,因为不知何故,它会在该条件语句之后通过该行到达下一行,它将首先运行设置为false(我假设,因为它没有“再显示)。为什么MessageBox.Show会导致UnhandledException?
再次,如果我调试,没有问题。如果我开始没有调试,它死。这是建设无论是在调试或发布模式时的情况。
如果我评论这块代码出来了,它的执行没有问题,如果我点击确定,它就快速执行,它执行时没有问题。如果任何人都可以向我解释为什么一个简单的messagebox检查ok会导致这样的问题,我很感激。谢谢!
我相信它一定与后台运行的代码有关,但不确定它是否是setter(这是访问setter的唯一代码)。我确实通过将这段代码移动到可以显示自己位置的按钮事件来解决这个问题。它最初是在InitializeComponent()后面运行的,所以UI还没有被完全绘制,所以显然这个过程的背景中的东西会干扰MessageBox。谢谢! – 2012-02-26 14:16:58