我正在尝试使用Roslyn解析VB.Net代码,但是它一直抛出InvalidProgramException (Jit编译器遇到了一个限制)。类似的代码可以很好地应用于C#。
这是我的密码:
var source = "Public Module Module1 \r\n Public Sub X() \r\n End Sub \r\n End Module";
var syntaxTree = Roslyn.Compilers.VisualBasic.SyntaxTree.ParseText(source);
var compilation = Roslyn.Compiler
我正面临一个问题,当我创建一个虚拟名称空间、类和sub,并为For/Next循环添加解析语句时,它会在我的编译单元的NormalizeWhitespace方法上崩溃。
IndexOutOfRangeException
Index was outside the bounds of the array.
at System.Collections.Immutable.ImmutableArray`1.Builder.get_Item(Int32 index)
at Microsoft.CodeAnalysis.VisualBasic.Syntax.SyntaxNormalizer.GetIden
我想找出可空日期之间的区别。DateDiff(DateInterval.Day, firstDate, secondDate)为Date工作,但不为Nullable(Of Date)工作。我的两个约会对象都是空字段。
这是错误消息:
重载解析失败,因为在不进行收缩转换的情况下,无法调用可访问的DateDiff:
Public Function DateDiff(Interval As String, Date1 As Object, Date2 As Object, [DayOfWeek As Microsoft.VisualBasic.FirstDayOfWeek = First
我有下面的代码是用QTP写的
Set oNetwork = DotNetFactory( "Microsoft.VisualBasic.Devices.Network" ,"Microsoft.VisualBasic")
bFlag=oNetwork.ping(strWebSiteName)
If bFlag Then
MsgBox( "Website is avilable" )
Else
MsgBox( "Website not avilable" )
End If
Set oNetwork=nothing
但是
我试图在vb.net中分析SQL命令文本,并将其与C#兼容。
我在将SQL命令文本从vb.net转换为c#时遇到问题。
我使用Telerik:
得到这些结果(如下所示)。我想知道是否有一个同时熟悉VB.NET和C#的人能帮我重写完整的SQL命令文本。
原始vb.net命令文本:
Dim r As SqlDataReader = sqlCommand.ExecuteReader()
Do While True
If r.Read() Then
SQL2 = "SELECT * from Invoices "
SQL2 = SQL2 &
我正在将一些旧的遗留VB应用程序从.NET框架转换到.NET 5,并且已经解决了大多数问题,然而,我在这些方面迷失了方向: Error BC30002 Type 'Global.Microsoft.VisualBasic.ApplicationServices.ApplicationBase' is not defined.
Error BC30002 Type 'Global.Microsoft.VisualBasic.ApplicationServices.User' is not defined.
Error BC30002 Type
是否有可能在Windows停靠容器中运行使用winforms的应用程序?我们所有的软件都严重依赖于winforms,但是可以在不与GUI交互的情况下运行所有这些工具。我试图从容器内部调试启动程序,并注意到应用程序在Run函数处停止,用于WindowsFormsApplicationBase基类。
using Microsoft.VisualBasic.ApplicationServices;
namespace Program
{
static class Program
{
[STAThread]
static void Main(string[] ar
我有一个可以在windows xp下完美运行的项目。
现在我尝试在Windows7下运行它,在Immediate window下遇到了很多异常。
A first chance exception of type 'System.ArgumentNullException' occurred in Microsoft.VisualBasic.dll
A first chance exception of type 'System.IO.FileNotFoundException' occurred in LP_Wizard.exe
A first chance e
我有一个用来收集数字数组的RichTextBox,但是这些数字必须以分号结尾。我想在输入分号后立即自动创建一个空格,然后继续输入其他数字。我试过这段代码,但它没有创建空格,而是将光标放在字符串的开头:
Private Sub RichTextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles RichTextBox1.KeyPress
If (Microsoft.VisualBasic.Asc(e.KeyChar) < 48) _
我有一个ParseTree侦听器实现,用于获取标准VBA模块中的全局范围声明:
public class DeclarationSectionListener : DeclarationListener
{
private bool _insideProcedure;
public override void EnterVariableStmt(VisualBasic6Parser.VariableStmtContext context)
{
var visibility = context.visibility();
if (!_in
我将一个无法管理的.dll导入到我的项目中。它没有留下任何文档,原始的工作代码在VB6中。因此,我试图使C#代码尽可能地与VB6等效。
问题
我不知道如何将下面的代码转换为C#.
Dim ATQ As String * 10
Dim Uid As String * 10
Dim MultiTag As String * 10
注意事项
问:有些用户问我,你真的需要字符串固定长度吗?
答:我已经尝试过在string中使用c#,但是没有对这些变量进行结果更新。因此,我认为dllImport函数的输入签名可能是错误的。所以,我想让它和VB6一样,因为我不知道什么应该是正确的签名。
试错
我尝试了所有
using Microsoft.VisualBasic;
Microsoft.VisualBasic.Interaction.InputBox("Favourite RPG?", "Game", "Cool!");
因此,这基本上是询问用户他们最喜欢的RPG。然后,它会显示默认值。我知道这是一个小例子,但是我的程序不会运行,因为我得到了这个错误:
The type or namespace name 'Interaction' does not exist in the namespace 'Microsoft.Visu
我在VS2008中有一个类库VS2008项目,目标是框架v3.5。它用于构建精细的版本x64和版本x86。我已经将这个项目转换为VS2012,仍然以框架v3.5为目标。它在VS IDE中构建得很好。但是当我使用MSBuild时,它告诉我它不能添加对Microsoft.VisualBasic的引用,因为它已经存在:"Project already has a reference to assembly Microsoft.VisualBasic. A second reference to 'C:\Windows\Microsoft.NET\Framework64\v2.0.50
在Visual 2015调试会话(断点命中)期间,如果更改几乎任何代码并选择任何、Step by 、Step Over (等等),则会立即得到,然后是CLR崩溃。
这似乎只出现在一个项目中。
System.Windows.Forms.dll!System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(int dwComponentID, int reason, int pvLoopData)
我有一个dll,它有一个函数,它需要几个Microsoft.VisualBasic.Collection类型的变量。但我尝试将它们作为数组列表和C#中的A列表传递,但都无济于事。
Severity Code Description Project File Line Suppression State
Error CS1502 The best overloaded method match for
'Object.RptOptimizer.BuildReport(string, string, System.Guid,
Microsoft.Vis
我正在尝试拆分一个字符串,但出现以下错误:
ban = Microsoft.VisualBasic.Strings.Split(xml, "<item jid='", -1,
Microsoft.VisualBasic.CompareMethod.Binary)
这是完整的代码
Dim ban As String
xml = xml.Replace("\\\", ")
If (xml.IndexOf("<query xmlns='http://jabber.org/protocol/muc#admi
Public Function fileToColHarvest(ByRef stream As Scripting.TextStream, Optional ByRef limit As Integer = 2000000, Optional ByRef unique As Boolean = False, Optional ByRef FirstSectionAsKey As Boolean = False, Optional ByRef prob As Double = 1) As Generic.List(Of String)
Dim buffer As String