منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : Load Data From Stream(dataofstream)
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
(07-03-19, 09:15 PM)elgokr كتب : [ -> ]
راجع هذا الرابط لعل يفيدك طريقة الكود بالسورس

تحياتى لك
وتمنياتى لك التوفيق

السلام عليكم
بالفعل جربت هذه الطريقة الان وكانت النتيجة هذا الخطأ
System.NullReferenceException: 'Object reference not set to an instance of an object.'

هذا هو الكود الذي تقصده
FileStream FFS = new FileStream(textBox2.Text, FileMode.Open);
BinaryReader FBR = new BinaryReader(FFS);
int ii = unchecked((int)FFS.Length);
byte[] FileCon = FBR.ReadBytes(ii);
FFS.Close();
FBR.Close();

قمت بتحويله لدوت نت هكذا
Dim FFS As New FileStream(stateFile, FileMode.Open)
Dim FBR As BinaryReader = New BinaryReader(FFS)
Dim ii As Integer = FFS.Length
Dim FileCon As Byte() = FBR.ReadBytes(ii)
dllfile.LoadStateDataFromStream((New IO.MemoryStream(FileCon)))
FFS.Close()
FBR.Close()

وكانت النتيجة هذا الخطأ
System.NullReferenceException: 'Object reference not set to an instance of an object.'
وعليكم السلام ورحمة الله وبركاته

اجعل الكود على هذا النحو
كود :
       Dim FFS As FileStream = New FileStream(stateFile, FileMode.Open)
       Dim FBR As BinaryReader = New BinaryReader(FFS)
       Dim FileCon() As Byte = FBR.ReadBytes(FFS.Length)
       dllfile.LoadStateDataFromStream(FileCon)
       FFS.Close()
       FBR.Close()

لكن ما لا اعرفه هو هذا السطر
كود :
       dllfile.LoadStateDataFromStream("")

الى ماذا يشير بضبط
اتمنى لو توضح ماذا تريد ان تفعل تماماً حتى اتمكن من مساعدتك بالكود المناسب
وليس بالتعديل على الكود الذى تستخدمه

تحياتى لك
وتمنياتى لك التوفيق
(08-03-19, 01:09 AM)elgokr كتب : [ -> ]
وعليكم السلام ورحمة الله وبركاته

اجعل الكود على هذا النحو
كود :
       Dim FFS As FileStream = New FileStream(stateFile, FileMode.Open)
       Dim FBR As BinaryReader = New BinaryReader(FFS)
       Dim FileCon() As Byte = FBR.ReadBytes(FFS.Length)
       dllfile.LoadStateDataFromStream(FileCon)
       FFS.Close()
       FBR.Close()

لكن ما لا اعرفه هو هذا السطر
كود :
       dllfile.LoadStateDataFromStream("")

الى ماذا يشير بضبط
اتمنى لو توضح ماذا تريد ان تفعل تماماً حتى اتمكن من مساعدتك بالكود المناسب
وليس بالتعديل على الكود الذى تستخدمه

تحياتى لك
وتمنياتى لك التوفيق

السلام عليكم
يظهر خطأ
Value of type 'Byte()' cannot be converted to 'Stream'.
في هذا السطر

dllfile.LoadStateDataFromStream(FileCon)
لان FileCon = بايت
وهو يطلب نوع ستريم
"
لكن ما لا اعرفه هو هذا السطر
كود :
dllfile.LoadStateDataFromStream("")
"
هذا كود خاص بملف دلل خارجي استخدمه في برنامجي
وهذه فنكشن الحفظ والاستدعاء ملف .bin

من داخل ملف dllfile


Public Function GetStateDataAsStream() As Stream Implements dllfile.API.MGAPI.GetStateDataAsStream

Return SerializationHelper.SerializeToStream(New StateData() With { .DeviceInfo = Me._deviceInfo, .IsAuthenticated = Me.IsUserAuthenticated, .UserSession = Me._user, .Cookies = Me._httpRequestProcessor.HttpHandler.CookieContainer })

End Function

Public Sub LoadStateDataFromStream(stream As Stream) Implements dllfile.API.MGAPI.LoadStateDataFromStream

Dim stateData As StateData = SerializationHelper.DeserializeFromStream(Of StateData)(stream)

Me._deviceInfo = stateData.DeviceInfo

Me._user = stateData.UserSession

Me._httpRequestProcessor.HttpHandler.CookieContainer = stateData.Cookies

Me.IsUserAuthenticated = stateData.IsAuthenticated

Me.InvalidateProcessors()

End Sub
وعليكم السلام ورحمة الله وبركاته

اذا كان الامر فقط تحتاج الى ارسال القيمة Stream الى السطر الخاص بك

فكل الامر ان تجعله على هذا النحو
كود :
       Dim FFS As FileStream = New FileStream(stateFile, FileMode.Open)
       Dim FBR As BinaryReader = New BinaryReader(FFS)
       Dim FileCon() As Byte = FBR.ReadBytes(FFS.Length)
       Dim FMST As Stream = New MemoryStream(FileCon)
       dllfile.LoadStateDataFromStream(FMST)
       FFS.Close()
       FBR.Close()

جرب وبامر الله سينجح الامر معك هذه المرة

تحياتى لك
وتمنياتى لك التوفيق
(08-03-19, 02:50 PM)elgokr كتب : [ -> ]
وعليكم السلام ورحمة الله وبركاته

اذا كان الامر فقط تحتاج الى ارسال القيمة Stream الى السطر الخاص بك

فكل الامر ان تجعله على هذا النحو
كود :
       Dim FFS As FileStream = New FileStream(stateFile, FileMode.Open)
       Dim FBR As BinaryReader = New BinaryReader(FFS)
       Dim FileCon() As Byte = FBR.ReadBytes(FFS.Length)
       Dim FMST As Stream = New MemoryStream(FileCon)
       dllfile.LoadStateDataFromStream(FMST)
       FFS.Close()
       FBR.Close()

جرب وبامر الله سينجح الامر معك هذه المرة

تحياتى لك
وتمنياتى لك التوفيق

نفس الخطأ بردو مش عارف ايه الحكاية
System.NullReferenceException: 'Object reference not set to an instance of an object.'
(08-03-19, 03:52 PM)الماجيك مسعد كتب : [ -> ]نفس الخطأ بردو مش عارف ايه الحكاية
System.NullReferenceException: 'Object reference not set to an instance of an object.'


الخطاء هنا يعود الى الملف الـ DLL

الذى تستخدمه يبدو انه يوجد به خطاء يرجع للقيمة فارغة فى 
كود :
NullReference

فكما تلاحظ هنا
كود :
Object reference not set to an instance of an object

حاول ان تصحح كودك خاص ملف الـ DLL
أو قم باستخدام كوداً بدلاً من ملف الـ DLL

تحياتى لك
وتمنياتى لك التوفيق
(08-03-19, 04:06 PM)elgokr كتب : [ -> ]
(08-03-19, 03:52 PM)الماجيك مسعد كتب : [ -> ]نفس الخطأ بردو مش عارف ايه الحكاية
System.NullReferenceException: 'Object reference not set to an instance of an object.'


الخطاء هنا يعود الى الملف الـ DLL

الذى تستخدمه يبدو انه يوجد به خطاء يرجع للقيمة فارغة فى 
كود :
NullReference

فكما تلاحظ هنا
كود :
Object reference not set to an instance of an object

حاول ان تصحح كودك خاص ملف الـ DLL
أو قم باستخدام كوداً بدلاً من ملف الـ DLL

تحياتى لك
وتمنياتى لك التوفيق

هل لديك وقت ارسل اليك الملف تشوف لو فيه خطأ
الصفحات : 1 2