//=================================================== Settings Stuff ====================== End ============================== public void GetAccInfo(StrParam mess) { if (mess != null) { StartLoadImgTread(mess.P3, pictureBox2); label5.Text = mess.P2; jsonAddon = mess.P4; walletVal = Convert.ToInt32(SteamSite.GetSweetPrice(Regex.Replace(mess.P2, @"[^\d.,]+", string.Empty))); label10.Text = mess.P1; ProgressBar1.Visible = false; SetButton(loginButton, Strings.Logout, 2); buyNowButton.Enabled = true; addtoScan.Enabled = true; setNotifyText(Strings.NotLogged); } else MessageBox.Show(Strings.ErrAccInfo, Strings.Attention, MessageBoxButtons.OK, MessageBoxIcon.Error); }
private void MarshalToManaged(ref object Paramater, object OrigParmater, IntPtr PtrParamater, MarshalAsAttribute Marshalling, Type ParamaterType, ICustomMarshaler CustomMarshaler, CharSet charSet, bool IsByRef) { if (Marshalling == null) { return; } switch (Marshalling.Value) { case UnmanagedType.AnsiBStr: try { if (ParamaterType == typeof(StringBuilder)) { StringBuilder StrParam = (StringBuilder)OrigParmater; if (IsByRef && StrParam == null) { Paramater = StrParam = new StringBuilder(); } if (StrParam == null) { break; } if (PtrParamater == IntPtr.Zero) { StrParam.Clear(); } else { this.ReadPrefixedStringAnsi(PtrParamater, StrParam); } } else if (IsByRef && ParamaterType == typeof(string)) { if (PtrParamater == IntPtr.Zero) { Paramater = null; } else { Paramater = this.ReadPrefixedStringAnsi(PtrParamater); } } } finally { if (PtrParamater != IntPtr.Zero) { this.FreeMemory(PtrParamater); } } break; case UnmanagedType.Bool: if (IsByRef) { Paramater = Convert.ToUInt32(Paramater) != 0U; } break; case UnmanagedType.BStr: try { if (ParamaterType == typeof(StringBuilder)) { StringBuilder StrParam = (StringBuilder)OrigParmater; if (IsByRef && StrParam == null) { Paramater = StrParam = new StringBuilder(); } if (StrParam == null) { break; } if (PtrParamater == IntPtr.Zero) { StrParam.Clear(); } else { this.ReadPrefixedStringUni(PtrParamater, StrParam); } } else if (IsByRef && ParamaterType == typeof(string)) { if (PtrParamater == IntPtr.Zero) { Paramater = null; } else { Paramater = this.ReadPrefixedStringUni(PtrParamater); } } } finally { if (PtrParamater != IntPtr.Zero) { this.FreeMemory(PtrParamater); } } break; case UnmanagedType.CustomMarshaler: if (CustomMarshaler == null) { CustomMarshaler = this.CreateCustomMarshaller(Marshalling); } try { if (IsByRef) { Paramater = CustomMarshaler.MarshalNativeToManaged(PtrParamater); } } finally { CustomMarshaler.CleanUpNativeData(PtrParamater); } break; case UnmanagedType.I1: case UnmanagedType.I2: case UnmanagedType.I4: case UnmanagedType.I8: case UnmanagedType.SysInt: case UnmanagedType.SysUInt: case UnmanagedType.U1: case UnmanagedType.U2: case UnmanagedType.U4: case UnmanagedType.U8: if (IsByRef) { Paramater = StructToStruct(Paramater, ParamaterType); } break; case UnmanagedType.LPArray: try { if (PtrParamater == IntPtr.Zero) { Paramater = null; } else { Type ArrElementType = ParamaterType.GetElementType(); Array ArrParam; int ArrLength = 0; if (IsByRef) { ArrLength = Marshalling.SizeConst; Paramater = ArrParam = Array.CreateInstance(ArrElementType, ArrLength); } else { ArrParam = (Array)OrigParmater; if (ArrParam != null) { ArrLength = ArrParam.Length; } } if (ArrLength > 0) { int bSize = ArrLength * Marshal.SizeOf(ArrElementType); Buffer.BlockCopy(this.ReadBytes(PtrParamater, bSize), 0, ArrParam, 0, bSize); } } } finally { if (PtrParamater != IntPtr.Zero) { this.FreeMemory(PtrParamater); } } break; case UnmanagedType.LPStruct: try { if (IsByRef && PtrParamater != IntPtr.Zero) { Paramater = this.ReadStruct(PtrParamater, ParamaterType); } } finally { if (PtrParamater != IntPtr.Zero) { this.FreeMemory(PtrParamater); } } break; case UnmanagedType.LPStr: try { if (ParamaterType == typeof(StringBuilder)) { StringBuilder StrParam = (StringBuilder)OrigParmater; if (IsByRef && StrParam == null) { Paramater = StrParam = new StringBuilder(); } if (StrParam == null) { break; } if (PtrParamater == IntPtr.Zero) { StrParam.Clear(); } else { this.ReadStringAnsi(PtrParamater, StrParam); } } else if (IsByRef && ParamaterType == typeof(string)) { if (PtrParamater == IntPtr.Zero) { Paramater = null; } else { Paramater = this.ReadStringAnsi(PtrParamater); } } } finally { if (PtrParamater != IntPtr.Zero) { this.FreeMemory(PtrParamater); } } break; case UnmanagedType.LPTStr: if (charSet == CharSet.Ansi || charSet == CharSet.None) { goto case UnmanagedType.LPStr; } else if (charSet == CharSet.Auto || charSet == CharSet.Unicode) { goto case UnmanagedType.LPWStr; } else { throw new NotSupportedException(); } case UnmanagedType.LPWStr: try { if (ParamaterType == typeof(StringBuilder)) { StringBuilder StrParam = (StringBuilder)OrigParmater; if (IsByRef && StrParam == null) { Paramater = StrParam = new StringBuilder(); } if (StrParam == null) { break; } if (PtrParamater == IntPtr.Zero) { StrParam.Clear(); } else { this.ReadStringUni(PtrParamater, StrParam); } } else if (IsByRef && ParamaterType == typeof(string)) { if (PtrParamater == IntPtr.Zero) { Paramater = null; } else { Paramater = this.ReadStringUni(PtrParamater); } } } finally { if (PtrParamater != IntPtr.Zero) { this.FreeMemory(PtrParamater); } } break; case UnmanagedType.TBStr: if (charSet == CharSet.Ansi || charSet == CharSet.None) { goto case UnmanagedType.AnsiBStr; } else if (charSet == CharSet.Auto || charSet == CharSet.Unicode) { goto case UnmanagedType.BStr; } else { throw new NotSupportedException(); } case UnmanagedType.VariantBool: if (IsByRef) { Paramater = Convert.ToInt16(Paramater) == -1; } break; } }