Jessecar96 / SteamDesktopAuthenticator

Desktop implementation of Steam's mobile authenticator app
MIT License
3.32k stars 622 forks source link

Crash with mono #77

Open waylon531 opened 8 years ago

waylon531 commented 8 years ago

I was able to compile this with mono, but it crashes whenever I try and go to trade confirmations. The binary is here: http://firechicken.net/steamdesktopmono.zip

Errors from stdout:

Method '<Module>:_getFiberPtrId ()' in assembly '/home/waylon531/SteamDesktopAuthenticator/Steam Desktop Authenticator/bin/Debug/CefSharp.Core.dll' contains native code that cannot be executed by Mono on this platform. The assembly was probably created using C++/CLI.

System.TypeInitializationException: The type initializer for '<Module>' threw an exception. ---> <CrtImplementationDetails>.ModuleLoadException: The C++ module failed to load.
 ---> System.MissingMethodException: Method contains unsupported native code
  at (wrapper managed-to-native) <Module>:_getFiberPtrId ()
  at <Module>.<CrtImplementationDetails>.LanguageSupport._Initialize (<CrtImplementationDetails>.LanguageSupport* ) <0x4168d8b0 + 0x000c3> in <filename unknown>:0 
  at <Module>.<CrtImplementationDetails>.LanguageSupport.Initialize (<CrtImplementationDetails>.LanguageSupport* ) <0x4168d6b0 + 0x0007b> in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at <Module>.<CrtImplementationDetails>.ThrowModuleLoadException (System.String errorMessage, System.Exception innerException) <0x4168e5b0 + 0x00043> in <filename unknown>:0 
  at <Module>.<CrtImplementationDetails>.LanguageSupport.Initialize (<CrtImplementationDetails>.LanguageSupport* ) <0x4168d6b0 + 0x000b7> in <filename unknown>:0 
  at <Module>..cctor () <0x4168d5b0 + 0x0002f> in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Steam_Desktop_Authenticator.ConfirmationFormWeb..ctor (SteamAuth.SteamGuardAccount steamAccount) <0x41689c00 + 0x000c3> in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) Steam_Desktop_Authenticator.ConfirmationFormWeb:.ctor (SteamAuth.SteamGuardAccount)
  at Steam_Desktop_Authenticator.MainForm.btnTradeConfirmations_Click (System.Object sender, System.EventArgs e) <0x416869a0 + 0x0005f> in <filename unknown>:0 
  at System.Windows.Forms.Control.OnClick (System.EventArgs e) <0x41673e80 + 0x00065> in <filename unknown>:0 
  at System.Windows.Forms.Button.OnClick (System.EventArgs e) <0x41673e00 + 0x00053> in <filename unknown>:0 
  at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) <0x41686590 + 0x000ff> in <filename unknown>:0 
  at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) <0x41686560 + 0x00013> in <filename unknown>:0 
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) <0x41686310 + 0x00118> in <filename unknown>:0 
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) <0x41473ff0 + 0x00217> in <filename unknown>:0 
  at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message& m) <0x41547790 + 0x00073> in <filename unknown>:0 
  at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message& m) <0x41547760 + 0x00013> in <filename unknown>:0 
  at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) <0x41473fc0 + 0x00024> in <filename unknown>:0 
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) <0x41473f80 + 0x00036> in <filename unknown>:0 
  at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) <0x41472940 + 0x00314> in <filename unknown>:0
Jessecar96 commented 8 years ago

I don't think CefSharp, what SDA uses to display the confirmations page, supports mono. Looks like no: https://github.com/cefsharp/CefSharp/issues/114

dyc3 commented 7 years ago

I made a CLI program to replace SteamDesktopAuthenticator on Linux, steamguard-cli. It can read and write the same files that SteamDesktopAuthenticator can, so you don't have to set up your mobile authenticator again.

Lazygamerw commented 6 years ago

@Dyc3 I tried your Program and it requires Nuget 2.12 and i didn't find any way to install it into mono