Может ли Mono.Cecil переписать символы отладки как VB.NET?

После перезаписи сборки VB.NET с помощью Mono.Cecil окно отладки «Стек вызовов» в Visual Studio 2010 показывает язык как C#, а не VB.NET. Можно ли настроить Mono.Cecil для перезаписи сборки, чтобы отладчик распознал переписанную сборку как VB.NET?

Следующий Mono.Cecil просто читает и сохраняет сборку без изменений. Однако отладчик считывает новую сборку как C#, а не как VB.NET.

Dim readerParameters = New ReaderParameters() With {.ReadSymbols = True}
Dim writerParameters = New WriterParameters() With {.WriteSymbols = True}

Dim appToRewrite = AssemblyDefinition.ReadAssembly(
    appToRewriteExe, 
    readerParameters
)

appToRewrite.Write(appToRewriteExe, writerParameters)

Желательно, чтобы переписанная сборка была VB.NET, поэтому окна отладки «Локальное» и «Немедленное окно» являются версиями VB.NET, а не версиями C#.


person Tim Murphy    schedule 27.10.2011    source источник
comment
Интересный. Интересно, происходит ли это для всех языков, например F#.   -  person Gabe    schedule 28.10.2011


Ответы (1)


Спасибо за регистрацию этой ошибки! О, подождите, это ТАК.

Во всяком случае, это определенно похоже на ошибку.

Я зарегистрировал его как https://github.com/jbevain/cecil/issues/81, StackOverflow — не очень хороший трекер ошибок.

person Jb Evain    schedule 28.10.2011
comment
Спасибо Джб. Я бы зарегистрировал это как ошибку, если бы был уверен, что это именно то, что это было :-) - person Tim Murphy; 28.10.2011
comment
Конечно :) Для справки: это было исправлено путем обновления копии управляемого PdbReader, которую Сесил позаимствовал у CCI, а также была добавлена ​​поддержка обнаружения FSharp. Спасибо! - person Jb Evain; 28.10.2011