3

I'm using DotNetBrowser and currently when I close my application I get the error System.InvalidOperationException in DotNetBrowser.dll (Channel is already closed).

When attempting to debug why this was occurring, I opened up the exception's details and found something strange. The StackTrace, TargetSite, DeclaringType, ReflectedType, etc., are all written backwards.

Is this because DotNetBrowser wrote their code backwards? Is this a bug with Visual Studio? What's going on?

enter image description here

Mr Awesome8
  • 281
  • 4
  • 10
  • 1
    Wauw, that's... awesome – J.N. May 09 '17 at 03:22
  • It's ummm..... a feature! Yeah, that's it! Hush. – krillgar May 11 '17 at 11:35
  • I thought this was a confusion of how the stacktrace is printed (bottom to top). I was not prepared for this. Maybe dotnetbrowser creates a stacktrace the other way (top to bottom), and they then reversed it to correct that, but they mistakenly reversed it character by character? – Flater May 11 '17 at 13:57
  • 1
    Regarding the original `System.InvalidOperationException`: I can recommend you to check if all the Browser and BrowserView instances are disposed properly when your application is closing. Here is a link to the corresponding article: https://dotnetbrowser.support.teamdev.com/support/solutions/articles/9000109699-disposing-browser – Anna Dolbina May 11 '17 at 14:48

2 Answers2

0

Dot net adds RTL markers in the text. copy the text in a text editor(notepad or so) hit CTRL + Home, type a ' single quote, CTRL + END type: '.split('').reverse().join("") (It will appear reversed but will still do it's stuff correctly)

Open a browser, hit f12, move to console and paste the the entire document and hit enter.

so in this case:

console.log('egassM.segassM.CPI.slanretnl.resworBteNtoD('.split('').reverse().join(""))

And then you have the readable message in your console.

This is the worst type of security.

Tschallacka
  • 27,901
  • 14
  • 88
  • 133
-1

You may notice that some entries are written backwards, some are messed up and some other entries are missing.

The release build of DotNetBrowser is obfuscated and protected, that's why the stack trace entries related to its internal logic are unreadable.

Anna Dolbina
  • 1
  • 1
  • 8
  • 9