2010-12-15 4 views
2

Поздравления! Мы работаем над проектом IronRuby. Существует приложение C# WPF. Мы написали модуль для этого приложения. Когда в IronRuby возникает ошибка, приложение показывает окно сообщения. Он показывает только сообщение об ошибке. Он не показывает, какой скрипт Ruby поднял ошибку.IronRuby Stack Trace

Как мы получаем IronRuby для отображения рубинового файла, который вызывает ошибку?

ответ

0

Я нашел обходной путь для этого, вам нужно обернуть ваш код с начать спасение как это:

begin 
    # Write your ruby code here, that can have an error 
rescue SyntaxError, NameError => boom 
    str = "String doesn't compile:\n " + boom 
    puts str 
    puts boom.backtrace.join("\n") 
rescue StandardError => bang 
    str = "Error running script: " + bang 
    puts str 
    puts bang.backtrace.join("\n") 
rescue 
    puts "Unknown error happened" 
end # rescues 

Казаться, что рубин интерпретатор генерирует исключение при возникновении ошибки, поэтому вам нужно, чтобы поймать его и записывать трассировку стека в ящик сообщений. Если вы найдете другой способ, напишите его здесь