问题标签 [vbc]

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 投票
3 回答
910 浏览

build-process - VBC + NAnt。编译 WinForm 时出错

首先应该注意的是,我试图避免重写我的所有脚本以使用 msbuild。

我注意到在将 NAnt 与 VBC 任务一起使用并编译 WinForms 应用程序时存在几个问题。主要问题似乎是 VBC 找不到 Sub Main。这很奇怪,因为在 VS 中,没有迹象表明我对 vbc 的调用与 msbuild 对 vbc 的调用之间存在任何差异。

是否有人对此问题的解决方案或强制创建可能/可能不会由 MSBuild/VS 生成的其余部分类的方法有任何见解?

示例构建脚本:

错误:[vbc] vbc:错误 BC30420:在“WindowAppNantTest.My.MyApplication”中找不到“Sub Main”。

0 投票
2 回答
4651 浏览

vb.net - 命令行编译 Settings.settings 使用 VBC

对于我较早的一个问题,涉及 VBC 和 NAnt 与 WinForms,我已经想出了一个更好的方式来说明这一点。

在 vbproj 文件中,您具有以下内容:

当从 Visual Studio 中运行构建(Debug Verbosity 设置为 Normal)时,产生的行之一是:

其中包括运行 vbc.exe 所需的所有设置。但是,从 Visual Studio 中获取该字符串,并直接在命令行上运行它会产生:

如何让上述生成器从命令行运行,或者是否有一个调用会生成 vbc.exe 正确运行命令字符串所需的正确临时文件?

0 投票
2 回答
617 浏览

windows - 在 Windows 上运行的 MonoDevelop (2.2b2) 可以使用 Microsoft 编译器吗?

我已经在我的 Windows 工作站上安装了 MonoDevelop 2.2b2,它安装了 .NET 3.5 SDK 并且运行良好(我可以毫无问题地使用 VS Express 和命令行编译)。

显然 MonoDevelop 在构建项目时默认调用 Mono VB.NET 编译器 (vbcnc.exe) 而不是 Microsoft 编译器 (vbc.exe)。(我还没有尝试过 C# 项目。)

有没有办法告诉 MonoDevelop 为 .NET 3.5 使用标准 VB.NET 编译器?我似乎在应用程序、解决方案或项目选项中的任何地方都找不到这样的选项。

我喜欢 MonoDevelop IDE(甚至比 SharpDevelop 更好),但我还没有安装和使用 Mono 的编译器,我也不知道它是否可以处理最新的 VB.NET / C# 语言功能。

0 投票
4 回答
3287 浏览

vb.net - 有谁知道查看 VB.NET 项目的所有编译器警告的方法?

VB.NET 有这个相当烦人的限制,它将编译器警告报告为 100。

当试图确定遵守 VB.NET 最佳实践(例如启用 Option Strict)所需的工作量时,这让事情变得相当令人沮丧。

有什么方法可以消除、调整此限制,或者可以通过其他方式(例如通过第 3 方代码分析工具)收集警告?

0 投票
3 回答
1249 浏览

compiler-construction - VS2010是否使用csc.exe/vbc.exe(直接或间接)编译相关项目?

正如标题所暗示的那样。

我找不到任何证据证明 DevEnv.exe 实际上在任何时候都调用了这些。

0 投票
1 回答
2991 浏览

.net - 使用命令行编译强命名程序集

我正在尝试使用 NAnt 来使用 vbc 编译器编译和签署程序集。我已经建立了一个项目,并且能够成功签署使用 VS2010 编译的程序集。当我尝试使用命令行对其进行签名时,我收到此错误:

我什至创建了一个非常简单的应用程序(只是一个 assemblyinfo.vb 文件),它不会使用 vbc.exe 进行编译和签名我做错了什么?

这是我的 assemblyinfo.vb:

test.pfx 与 assemblyinfo.vb 位于同一文件夹中

这是我尝试编译它的方式:

我也尝试过使用

并尝试使用没有 AssemblyDelaySign 和 AssemblyKeyFile 属性的 /keyfile 参数

如果我删除 AssemblyDelaySign 和 AssemblyKeyFile 属性并省略 /keyfile 命令行参数,它编译得很好。使用 vbc 执行此操作的正确方法是什么?

--编辑:我发现 MSBuild 也不喜欢像我在 AssemblyInfo.vb 中定义的那样具有 AssemblyKeyFile 属性,它给出了相同的失败消息。因此,我目前可以正确构建它的唯一方法是在项目上设置属性以告诉它要使用哪个密钥文件并签署程序集。

--编辑:这似乎可以在 VS2010 中构建项目的原因是 msbuild 在命令行上将 /keycontainer 传递给 vbc.exe,而不是使用 /keyfile。仍然不知道如何使用 /keyfile 命令行参数。

0 投票
2 回答
1571 浏览

asp.net - ASP.NET:带有 vbc.exe 的解析器错误消息

这是场景:

我们在服务器上运行了一个由 ASP.NET 提供支持的内容管理系统,该系统由第三方构建,因此不幸的是,出于这个问题的目的,它必须被视为“黑匣子”。我不太了解它是如何工作的。其带有 IIS 7 的 Windows 2008。

几周后它会正常工作,然后每当有人尝试访问页面时,它就会突然开始返回此 .NET Parser Error:

该消息提到它“无法执行”vbc.exe,我知道它与编译 aspx 页面有关。从它引用的源代码行来看,它发生在它试图@Register自定义页面上的控件时。

有没有人对可能导致这种情况的原因有任何暗示或预感?例如,当服务器资源不足时会发生这种情况吗?

0 投票
1 回答
407 浏览

.net - 对于相同的代码,MSBuild 3.5 生成的 IL 与 MSBuild 4 不同

编辑表明 VS'08 无法编译工作的 dll,尽管我最初说它可以

我们有一段 VB 代码,其编译方式不同,具体取决于用于编译它的工具。

我尝试使用 Visual Studio '08、'10 和 MSBuild 3.5 和 4 在几台不同的计算机上编译此代码。MSBuild 3.5(我们的构建服务器使用)和 VS'08 总是产生损坏的 dll,而 MSBuild4/VS'10产生一个工作的dll。我比较了 MSBuild 3.5 和 4 之间的 Vbc 命令行参数,唯一的区别是(/nodstdlib、/sdkpath、/langversion:9),它们似乎都与使 Vbc 4 编译 3.5 兼容的 dll 有关。

在损坏的版本中,If 语句中的代码会抛出错误,指出委托给实例方法不能具有 null 'this'。

相关代码的片段是:

使用 Reflector 将 IL 反汇编为 VB,工作 dll 包含:

使用Reflector将IL反汇编成VB,破解的dll包含:

0 投票
1 回答
3137 浏览

.net - .NET:Resgen 教程

首先,我有RFMRFM,我尝试关注一些站点,但我无法掌握资源管理器的概念。

有人可以向我解释如何生成类似于 VS IDE 的资源管理器。

例如,如果我从命令行使用 VBC 编译,我可以看到我的所有资源文件。

vbc /t:exe myfile.vb /res:res1 /res:res2

资源1

资源2

如果我使用 VS IDE 编译,我只会看到:

我的程序.资源.资源

如何从命令行手动创建资源管理器,以便可以像使用 VS IDE 一样使用资源管理器?

当我尝试使用 resgen 时,它抱怨我的文件扩展

C:...>resgen image.bmp myfile.Resource.resource 源

ResGen:错误 RG0000:名为“image.bmp”的文件没有已知的扩展名。托管资源文件必须以 .ResX、.txt 或 .resources 结尾。

在手册中它声明使用RESXGEN图像,但我不相信 VS2008 中可用。我被困住了。

更新:发现: http: //msdn.microsoft.com/en-us/library/ekyft91f (VS.80).aspx 解释如何编写 ResX 文件。似乎是一个可重复的过程。我不确定他们为什么不包含 Visual Studio 的实用程序来创建它。

我尝试使用 ResourceWriter 的示例。Resgen 在使用 MS 提供的 ResourceWriter 类时吐了。

0 投票
3 回答
9378 浏览

vb.net - 没有 UI 的 VB.net 程序

我正在通过文本文件制作一个 VB.net 程序,并通过命令行使用 vbc.exe 对其进行编译。我试图让一个简单的程序在我的计算机后台运行。问题是,它显示了烦人的控制台窗口。我怎么什么都没有显示?没有表格,没有控制台?