问题标签 [satellite-assembly]
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.
c# - 你可以静态链接附属程序集吗?
我对卫星程序集的了解不够了解它们的构造,我很好奇是否可以将它们全部静态链接到一个 dll 中并获得与它们没有静态链接时相同的功能:
c# - 删除程序集中的默认语言并将其移动到附属程序集中
我有一个主要用 C# 编写的 .Net 3.5 应用程序,它使用 .resx 文件来存储几种不同语言的国际化数据,包括字符串、控件大小和位置等。我想弄清楚的是:有可能以与其他文化数据相同的方式将默认文化数据提取到附属程序集中来编译我的应用程序?
我试图防止用户以一种(非默认)语言使用软件,删除 bin 目录中的文化文件夹,然后可以访问默认语言的情况。
如果由于框架限制这是不切实际或不可能的,是否可以使用默认语言以外的语言进行编译,以便我可以向用户提供应用程序的单个非默认版本?
非常感谢您的回答。
.net - 我可以通过更改 dll 所在文件夹的名称来将操作系统中的一种语言的卫星资源程序集用于另一种语言吗?
如果我使用本地化资源编译 .NET 附属程序集,该程序集本身是否知道它用于哪种语言,或者这是否隐含在它出现的文件夹中?
如果我决定创建一个本地化程序集,其中所有字符串都用“@”符号括起来以测试我的所有应用程序是否都已本地化,然后将其安装在 EN-GB 操作系统上的“en”子文件夹中并加载应用程序并我看到我的所有符号都用“@”符号括起来,然后我可以在德语操作系统上使用相同的程序集,但将它放在“de”子文件夹中并期望它仍然本地化应用程序吗?还是在程序集编译中嵌入了程序集的语言环境,因此即使它在正确的位置找到它也不会加载它?
.net - 构建后如何将卫星程序集复制到不同的文件夹?
我有一个 WPF 项目,并且添加了对使用 Satellite 程序集进行本地化的支持。我支持 2 种文化,即en-US 和 fr-CA。
现在,当我构建项目时,我得到 2 个文件夹,即 en-US 和 fr-CA 以及文件夹中相应的 Satellite 程序集。
问题是在项目构建后,我必须将 bin/debug 文件夹的内容复制到不同的目录中。
要复制 dll,我正在使用 post build event copy /y "$(TargetPath)" "c:\Temp\Plugins\"
我希望 2 个文件夹 en-US 和 fr-CA 也被复制到“c:\Temp\Plugins\”。我该怎么做?我不想在后期构建活动中硬编码像 en-US,fr-CA 这样的名称,因为我们计划添加对至少 30 种语言的支持!
是否有一种通用方法可以在构建后将卫星程序集复制到不同的目录?
**注意:我只想要卫星程序集,bin/debug 文件夹中可能有很多我不想复制的其他文件!
c# - 读取保存在具有 resx 文件的不同程序集中的字符串资源时出现问题
我在单独程序集中的“resx”文件中定义了字符串资源。对该程序集的项目引用被添加到我的 WinForm 项目中。项目引用已正确添加,我可以在编码时访问字符串。但是,在运行时它为我引用的字符串返回 NULL。我正在尝试将字符串显示为消息框中的消息。
当我在 Quick Watch 中看到资源字符串时,它显示:“该名称在当前上下文中不存在。”
可能出了什么问题?
asp.net - ASP.NET 应用程序未拾取附属程序集
我有一个名为“TestResourceApp”的 Web 项目,App_GlobalResources 文件夹中有 Labels.resx。我想通过创建附属程序集来添加另一种语言。
以下是我创建附属程序集的步骤。始终显示默认文本。我做错什么了 ?
1) 在不同的文件夹中创建 Labels.fr.resx。
2)生成资源文件:
Resgen Labels.fr.resx TestResourceApp.App_GlobalResources.Labels.fr.resources
3)生成卫星程序集:
AL /t:lib /embed:TestResourceApp.App_GlobalResources.Labels.fr.resources /out:french.dll /c:fr
4) 将 french.dll 复制到 TestResourceApp/bin/fr
我在 web.config 中将 uiculture 设置为 auto,并且更改了浏览器上的语言。
c# - 在 .NET 应用程序中找不到名为“XX.dll”的备用区域性“en-US”的附属程序集错误
我正在定制一个开源 .NET 应用程序。它编译得很好。但是表单和控件拒绝在设计器中显示,引发以下错误:
无法找到或无法加载后备区域性“en-US”的名为“XX.dll”的附属程序集。这通常是设置问题。请考虑重新安装或修复应用程序。
我知道这是一个多语言应用程序,但我想放弃其他语言并坚持通过表单设计器进行简单的字幕自定义。
此外,该问题会阻止将图像添加到控件。与以下行相同的异常发生:
为了禁用附属程序集资源,我需要更改什么?
谢谢...
.net - 使用多个项目的帮助程序/实用程序库减少膨胀的最佳实践
好的,我有一个我开发的应用程序,我们称之为 Project A。我放入共享库中的 Microsoft .NET Framework 中找不到的函数,我们称之为 MyLib。
现在项目 B、C、D、E 也使用 MyLib(很多项目)。我的“MyLib”已经慢慢添加了 4 或 5 年了。
我现在遇到的问题是 MyLib很大。嗯,5MB,但我称之为巨大。
我的问题是我应该,我可以,以及如何使用 MyLib 编译我的项目,但从 MyLib 中删除未使用的函数、类等?我的 Hello World 应用程序使用 MyLib 中的 1 个微小静态函数会导致 6MB HelloWorld.exe(在 ilmerge 之后),这让我感到很震惊。
FOSS > 付费软件。
c# - 语言设置为“默认”,但我没有看到 resource.dll?
我刚刚将我的一种形式设置为 Localization: True 并将语言保留为“默认”。
我检查了 resx,果然它包含了我表单的所有字符串。
所以我运行应用程序,我希望在我的调试目录中找到卫星资源 DLL,但它不存在。
所以这让我很惊讶.. 是不是默认语言没有编译为附属 DLL?
我想将语言(包括默认)作为附属程序集分发。
.net - 为什么 MonoDevelop 找不到 al2 链接器来为 ZedGraph 构建卫星程序集?
系统信息:
- Windows 7的:
- 单声道开发 2.4.2.1
- 单声道 2.6.7
试图编译 ZedGraph(一个图表控件)。但它具有多语言支持的资源,这些资源不会编译成附属程序集。
请意识到这一切都可以在 Visual Studio 上的 .Net 中正常编译、构建和运行。我们正在尝试移植并让它在 Mono 上运行。
具体来说,MonoDevelop 给出了一个错误,即 'al2' can't be found,它是 Mono for .Net 2.0 的链接器
我对此进行了广泛的谷歌搜索,结果发现 al2 是 Mono .Net 2.0 的链接器,并且它应该在 Mono 发行版中。
所以我安装了 Mono 发行版,它在 bin 文件夹中显示了 al2。
但是 MonoDevelop 仍然没有找到它。
我想我可以尝试将 Mono bin 添加到 Windows 路径,但是由于在使用 Visual Studio 构建 .Net 时出现不兼容问题,我不喜欢添加到 bin。
简而言之,MonoDevelop 构建在我们所有内部开发的库之上。那么如何让卫星程序集为 ZedGraph 项目工作?