我正在编写一个应用程序,并希望使用TaskDialogIndirect函数 – 但是我不想写大量的P / Invoke等等,所以我已经包含了WinAPICodePack.但是有一个问题!当我为TaskDialog创建一个控件并将其添加到对话框时,一切正常.但是,运行Show方法会导致mscorlib中出现OverflowException.我将其跟踪到一些指针处理和编组.
原文链接:https://www.f2er.com/windows/363623.html尝试使用代码得到了结果,我发现,必须为.NET 3.5和包含应用程序TOO编译DLL.在.NET 4.0上安装我的应用程序会调用此错误…有关解决方法的任何想法 – 或者您甚至可以重现此错误?
另一个问题是我可以将Icon属性设置为我想要的,但图标根本不显示.我必须设置一个动态设置图标的Opened事件……
信息:在Windows 8 Pro x64 RTM上运行Visual Studio 2012 RTM.应用程序是标准的WPF应用程序.
示例代码:
TaskDialog td = new TaskDialog(); td.Cancelable = true; td.Caption = "Caption"; td.InstructionText = "Instructions"; td.Text = "Text"; TaskDialogCommandLink buttonElevation = new TaskDialogCommandLink("elevation","Elevation required Sample"); buttonElevation.UseElevationIcon = true; td.Controls.Add(buttonElevation); td.Show(); // OverflowException occurs here!