问题标签 [unmanagedresources]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
132 浏览

c# - 使用 C# 从非托管 dll 中读取资源

我在 C# 中编写了一个命令行工具,它将 .resources 文件中的资源换成替代资源。它使用 ResourceReader 和 ResourceWriter。

我想对 dll 文件做同样的事情,但我找不到这样做的方法。我尝试使用反射,但这仅适用于 .net(托管)DLL。我使用的大多数 dll 都是用其他东西构建的。

我无法为我的生活弄清楚如何做到这一点!像 Resource Hacker 这样的东西可以做到,所以它一定是可能的。

有人可以帮忙吗?

谢谢

0 投票
0 回答
4338 浏览

wpf - 应用程序退出,退出代码为 -1073740771

我有一个 WPF 应用程序,它有时会以 -1073740771 的退出代码退出。该问题不会以任何模式发生,并且因系统而异。在某些系统中,该问题发生的比例不到总病例的 10%,而在其他系统中,我看到它的发生率几乎占总病例的 30%。我无法形成任何可靠的复制步骤,而且它似乎是随机发生的。

症状包括在我单击关闭按钮后,应用程序退出,但在任务管理器中我仍然可以看到进程徘徊约 20-30 秒,然后退出。该应用程序似乎正在正常关闭(从功能的角度来看),因此它可能对使用它的客户没有太大影响,但错误代码正在记录在日志中,这很烦人。

当我从 Visual Studio 调试时,也会发生此问题,但在 try - catch 块中没有发现异常。

0 投票
1 回答
1151 浏览

c# - 从 C# 调用 C++ dll 时内存泄漏

我有一个从 C# 代码调用的 C++ dll。dll 接受几个参数并返回一个 int ..

C++ 代码。

C#

有时我看到这个应用程序正在使用大量内存,我首先想到的是内存泄漏。垃圾收集器是否处理在 C++ 代码中初始化的所有对象?C++ 代码是否会为字符串生成器(“缓冲区”)初始化一些内存,即使它是在 C# 中初始化的。我无法在 C++ 中处理它,因为我需要从字符串生成器收集数据。

我从未在 C++ 上工作过,但我看到在 C++ dll 中声明的一些对象正在被清除。

我在调用 C++ 代码的方式上可能做错了什么。这个字符串生成器会导致内存泄漏吗?

0 投票
1 回答
1004 浏览

sbt - sbt:在多项目构建中将资源复制到类路径

我有一个具有以下结构的 sbt 项目:

project聚合serverProjectclientProject。启动 sbt 和编译工作正常。

在运行或打包时,serverProject我希望file.json最终位于serverProject.

我添加file.jsonunmanagedResources in (Compile)forserverProject但尝试运行/打包时出现以下错误:

看起来 sbt 找到了项目根目录和 serverProject 目录作为候选,file.json之后它失败了。

如何绕过这个错误?

感谢您的阅读和帮助!

0 投票
1 回答
46 浏览

c# - 如何找出句柄指向的对象是否已在 C# 中释放?

我一直在编写代码以安全有效地处理 C# 中的非托管对象。这是使用图像创建的位图对象。我喜欢跟踪句柄以找出调用 Dispose() 前后图像在内存中的状态。有没有一种好方法可以确定在调用 Dispose() 后句柄是否仍指向有效对象?

0 投票
0 回答
64 浏览

c# - ADODB 对象是非托管资源吗?

我在我的 winform 应用程序中创建了 ADODB 记录集、命令等,并且想知道是否应该在他们的包装类上实现 IDisposable 以释放它们。它们是非托管资源吗?

并且要释放任何非托管资源,应该调用 Marshal.ReleaseObject(resourceInstance) 还是将其设置为 null 就足够了?

在此先感谢尼西塔

0 投票
1 回答
718 浏览

c# - 如果我在程序关闭后不处置非托管资源会发生什么

所以我从某人那里听说它根本不会发布,但这是什么意思?即使您关闭程序,它也会保留在内存中?这是怎么回事?

找不到答案,如果这是重复的或对论坛来说不够好 Q 请告诉我,因为我真的找不到答案

0 投票
1 回答
651 浏览

c# - C# 在“使用”和“尝试/完成”块之外处理非托管资源

我想要一个方法来返回一个非托管资源,然后在程序中处理该资源。以下实现是否符合我的意图?

0 投票
1 回答
415 浏览

c# - C# 强制关闭应用程序并释放非托管资源

在我的应用程序中的某个时刻,我想保存一个文件,如果它无法退出应用程序,则显示失败原因并释放所有非托管资源,女巫是通过析构函数完成的。

在使用调试和逐步(F11)执行时,我看到在我的代码中没有调用析构函数。是否释放了非托管资源,或者是否有办法确保在无法保存信息并且应用程序必须退出的情况下调用析构函数?

0 投票
0 回答
80 浏览

c# - 将非托管资源传递给其他类

使用非托管资源时,将它们传递给其他对象的最佳做法是什么?我知道它应该是创建非托管资源以处理它的类的责任,但是如果我将它传递给构造函数,该资源是否会持续存在,然后将它放在一个私有字段中以在对象的整个生命周期中使用。

例如,考虑以下场景:

在这种情况下,最佳做法是什么?将它传递给私有变量以供以后使用当然更容易编写,但这会导致资源处理问题吗?在这个例子中只有一个方法,后者看起来更好,但是当你有 10-15 个方法使用资源时,并且调用的其他类也需要资源时,它会变得非常混乱。

我过去曾遇到过内存泄漏问题,我不确定这是否是我处理非托管资源的方式。我将非托管资源更改为通过参数传递,但这导致它成为大约 50 种方法中的参数,这似乎很痛苦。