草庐IT

avoiding-a-wpf-memory-leak-with-d

全部标签

wpf - WPF 不使用 Windows (pl.) for Controls 有什么影响?

它wouldappear在经典的Windowstm应用程序中,显示的每个控件(按钮、列表框、菜单...)都有自己的窗口(如HWND)。此外,使用Windows窗体(WinForms),虽然控件不再使用经典的窗口类,但每个控件仍然有自己的窗口(HWND)。但是,通过WPF创建的Windows(复数)不使用单独的Windows(复数)作为其控件。WPF对话框上的按钮不是一个单独的窗口(HWND)。问题这对我们(作为开发人员)可以用WPF窗口做什么或不能做什么有什么影响加上它的控件与“经典”对话框窗口,其中不仅每个控件都有自己的HWND,但即使是窗口类也是众所周知的(Button、#3277

wpf - C# 在 Windows 中为每个监视器获取 DPI 缩放

我正在使用WPF应用程序中的代码,该应用程序需要计算出Windows中每个显示器的DPI缩放大小。我能够计算出主屏幕的DPI,但出于某种原因我不知道如何获得其他显示器的比例-其他显示器都返回与主显示器相同的DPI。有一些代码可以执行此操作,请耐心等待。第一组代码处理基于HWND获取DPI。该代码获取事件监视器,然后检索DPI设置并将数字与96DPI(通常为100%)的比率进行比较。publicstaticdecimalGetDpiRatio(Windowwindow){vardpi=WindowUtilities.GetDpi(window,DpiType.Effective);dec

c++ - 如何获取我正在使用 "open with"方法执行的程序路径?

我遇到的问题是我为我的文件使用了相对路径,所以当我使用“打开方式”方法在我的程序中打开文件时,我所有的路径都被搞砸了(它将在我所在的文件夹中创建我的文件使用了这种“打开方式”方法。)我如何检索我用来使用“打开方式”方法打开文件的.exe文件的完整路径?编辑:我的主要功能:intWINAPIWinMain(HINSTANCEhInstance,//InstanceHINSTANCEhPrevInstance,//PreviousInstanceLPSTRlpCmdLine,//CommandLineParametersintnCmdShow)//WindowShowState{

c# - 程序如何处理文件 "opened with..."呢?

我想知道是否有人可以指出正确的方向。例如,您知道在大多数IDE中,如果您使用“打开方式”打开源文件,它会运行程序并将其打开吗?然后如果您打开另一个,它会在同一进程中的新选项卡中打开它吗?我的问题不是如何将程序添加到shell命令,而是:例如,C#应用程序如何“接收”PDF文件?当另一个文件与它一起运行时,应用程序如何在同一进程中打开该文件(不必程序实例)? 最佳答案 当第二个程序实例启动时,在加载任何界面组件之前,它检查是否有另一个程序实例正在运行。如果是这样,它会以某种方式与其通信(特定于程序:这可以是套接字、进程间中断、共享内存

windows - 带有大文本文件的 Perl "out of memory"

我在最新版本的StrawberryPerlforWindows下使用以下代码时遇到问题:我想读入目录中的所有文本文件并处理它们的内容。我目前看不到一种逐行处理它们的方法,因为我想对文件内容进行的一些更改会跨越换行符。处理主要涉及删除大块文件(在我下面的示例代码中,它只是一行,但理想情况下我会运行几个类似的正则表达式,每个都从文件中删除内容)我在大量文件(>10,000)上运行此脚本,它总是因“内存不足!”而崩溃。大于400MB的特定文件上的消息。问题是当我编写一个只处理一个文件的程序时,代码工作正常。机器有8GBRAM,所以我认为物理RAM不是问题。我通读了其他关于内存问题的帖子,但没

node.js - 如何在 Windows 10 上修复错误 : spawn UNKNOWN with node. js v7.8.0?

当我尝试运行spawn时,我在Windows10上遇到错误varspawn=require('child_process').spawn;varchild=spawn(path.join(__dirname,'../bin/run.js'),{},{env:env});child.stdout.pipe(process.stdout);child.stderr.pipe(process.stderr);这是错误信息。我找不到太多关于解决这个问题的信息。[14:58:15]错误:生成未知我用nvs安装了node,它似乎对其他一切都工作正常。所以我发现它是run.js,它是一个带有sheb

wpf - 如何实现一个多平台的多媒体应用?

您将在何种技术基础上实现多媒体应用程序,该应用程序必须满足以下要求:平台:WindowsXP/Vista、MacOSX、Linux(最好有)应该从本地磁盘播放音频(mp3)和视频(H.264会更好)我调查了类似Cocotron的事情这是一个类似于Cocoa的跨平台Objective-CAPI,但我不确定它是否是正确的选择。为每个操作系统(Windows上的WPF,MacOSX上的Cocoa)使用单独的代码库会不会更简单?我还尝试了基于浏览器的应用程序(Flash-Player,通过VLC提供的流媒体服务器访问本地文件)但得出的结论是,这将是一个非常脆弱的解决方案。单声道怎么样?

c# - WPF C# 应用程序产生两个主窗口的问题

过去几天我一直在开发这个应用程序,突然间这个super奇怪的问题开始发生,我的两个主窗口在运行时开始生成。我已经搜索了3个小时,但找不到发生这种情况的位置或原因。如果你想向陌生人表达爱意,你能帮我找出为什么会这样吗?我的项目位于此处(需要.NET4):http://www.kirkouimet.com/files/development/Listen.zip 最佳答案 在App.xaml中,您有StartupUri="MainWindow.xaml",在App.xaml.cs中,您有MainWindow=newMainWindow(

c# - 如何在 WPF 应用程序中使用 C# 制作类似 google 的自动完成文本框?

我试图找到解决方案,但没有找到我要搜索的内容。所以这是我的问题。我想要一个带有文本框的类似谷歌的行为。当我键入“dum”时,它应该在数据库中找到dummy并将其显示为文本框下的选项。应该是可以选择的。我不使用ASP.net或任何其他东西。只是纯C#。感谢您的帮助! 最佳答案 设置AutoCompleteSource属性为字符串列表,并设置AutoCompleteSource到CustomSource和AutoCompleteMode建议。 关于c#-如何在WPF应用程序中使用C#制作类似

c# - 如何保证我的 WPF 应用程序的永久管理员权限

我已经阅读了很多关于Windows7等UAC升级的文章,但我没有成功找到我的问题的答案:如何保证我的应用程序将始终“以管理员身份运行”,我是寻找一些代码片段或其他东西。任何帮助将不胜感激。/请不要发送垃圾邮件,例如:“您确定您需要此权限和访问权限吗?”-是的,我确定应用程序需要它们。 最佳答案 使用以下部分将应用list添加到您的应用: 关于c#-如何保证我的WPF应用程序的永久管理员权限,我们在StackOverflow上找到一个类似的问题: https:/