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

نسخة كاملة : سؤال بسيط حول webbrowser
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم احبابي في الله 
قمت ب انشاء لوكال هوست
و اريد عند الضغط على زر يقوم تغيير كلمة في ملف P2.html ب رابط و عند الضغط على زر اخر يقوم بنفس العملية
لقد وضعت مثال هنا لتفهوني اكثر
استخدم الكود كما يلى
كود :
Dim txtFile As String = Application.StartupPath & "P2.html"
       Dim hamdane As String = "FirAs"
       File.WriteAllText(txtFile, File.ReadAllText(txtFile).Replace(hamdane, Me.channels_url))

بخصوص الجزء الخاص بـ
كود :
Dim hamdane As String = "FirAs"

على ما اعتقد من المفترض ان يكون
كود :
Dim hamdane As String = "mediasource="

حسب ما فهته من الفكرة ومن الملفات المرفقة

ويرجع الامر لك فى الاول والاخر

تحياتى لك
وتمنياتى لك التوفيق
اخي العزيز انا اريد تفيير كلمة FirAs كل مرة و المشكل عند استعمال replace لا يمكنني التعديل على الملف مرة اخرى
و قمت ب اضافة كود عودة الملف كما كان بعد ثواني قليلة و لكن يظهر لي خطأ لان الملف مفتوح في webbrowser و لا يمكن التعديل عليه
بسيطة
قم بعمل كود sub وظيفته استرجاع الملف مرة اخرى
من ثم استدعى ذلك مع كل زر فى بداية الكود
من حيث ى كل مرة يضغط المستخدم بين الزر والاخر
يقوم اولاً باسترجاع الملف لاى طبعه الرئيسي
من ثم يقوم بتنفيذ تغيير المطلوب

يرب تكون الفكرة مبسطة

تحياتى لك
(25-05-18, 10:28 PM)elgokr كتب : [ -> ]
بسيطة
قم بعمل كود sub وظيفته استرجاع الملف مرة اخرى
من ثم استدعى ذلك مع كل زر فى بداية الكود
من حيث ى كل مرة يضغط المستخدم بين الزر والاخر
يقوم اولاً باسترجاع الملف لاى طبعه الرئيسي
من ثم يقوم بتنفيذ تغيير المطلوب

يرب تكون الفكرة مبسطة

تحياتى لك
شكرا لك اخي
لقد جربت و نفس المشكل
ربما اخطأت في كتابة الكود
ممكن تجربها انت اخي بما ان المشروع عندك و الله ينورك
(25-05-18, 09:19 PM)trakktour كتب : [ -> ]اخي العزيز انا اريد تفيير كلمة FirAs كل مرة و المشكل عند استعمال replace لا يمكنني التعديل على الملف مرة اخرى
و قمت ب اضافة كود عودة الملف كما كان بعد ثواني قليلة و لكن يظهر لي خطأ لان الملف مفتوح في webbrowser و لا يمكن التعديل عليه


ارفق المشروع مجدداً بعد اضافة كود استرجاع الملف

حتى يتم عمل التعديل المبسط على نفس الكود بدون اى تغيير او اضافات بالكود

تحياتى لك

فى حاجة ممكن تسهل عليك الامر ايضاً فى الجزء ده
كود :
Dim hamdane As String = "FirAs"

لو تحول لــ
كود :
Dim hamdane As String = My.Settings.FirAs

بحيث يتم انشاء فى Settings للمشروع حقل باسم FirAs
ويتم عملية تسجيل قيمة Me.channels_url فى حقل 
كود :
My.Settings.FirAs

من خلال تطبق الكود
كود :
My.Settings.number_name = Me.channels_url
My.Settings.Save()

من ثم تحويل كود الملف الى
كود :
Dim txtFile As String = Application.StartupPath & "P2.html"
If My.Settings.FirAs = "" Then
My.Settings.FirAs = "FirAs"
My.Settings.Save()
End If
Dim hamdane As String = My.Settings.FirAs
File.WriteAllText(txtFile, File.ReadAllText(txtFile).Replace(hamdane, Me.channels_url))

وبكده كل عملية تغيير فى الملف للقيمة من خلال الضغط الزر سيتم تسجيلها فى My.Settings.FirAs
هيكون الامر سهل انه يستعين القيمة الاخير المستخدمة

طيب وللاحتياط اكتر
عند اغلاق البرنامج طبق الكود التالى
كود :
My.Settings.FirAs = ""
My.Settings.Save()

مع كود استرجاع الملف الى الكود الافتراضي

يارب الفكرة تكون واضحة

والرجاء مراجعة الكود انا قمت بكتابة الكود يدوياً 
مع النسخ الكواد من التعليقات السابقة
حيث لا يكون خطاء باحرف او ما شبه

تحياتى لك 
وتمنياتى لك التوفيق
(26-05-18, 12:34 AM)elgokr كتب : [ -> ]
(25-05-18, 09:19 PM)trakktour كتب : [ -> ]اخي العزيز انا اريد تفيير كلمة FirAs كل مرة و المشكل عند استعمال replace لا يمكنني التعديل على الملف مرة اخرى
و قمت ب اضافة كود عودة الملف كما كان بعد ثواني قليلة و لكن يظهر لي خطأ لان الملف مفتوح في webbrowser و لا يمكن التعديل عليه


ارفق المشروع مجدداً بعد اضافة كود استرجاع الملف

حتى يتم عمل التعديل المبسط على نفس الكود بدون اى تغيير او اضافات بالكود

تحياتى لك

فى حاجة ممكن تسهل عليك الامر ايضاً فى الجزء ده
كود :
Dim hamdane As String = "FirAs"

لو تحول لــ
كود :
Dim hamdane As String = My.Settings.FirAs

بحيث يتم انشاء فى Settings للمشروع حقل باسم FirAs
ويتم عملية تسجيل قيمة Me.channels_url فى حقل 
كود :
My.Settings.FirAs

من خلال تطبق الكود
كود :
My.Settings.number_name = Me.channels_url
My.Settings.Save()

من ثم تحويل كود الملف الى
كود :
Dim txtFile As String = Application.StartupPath & "P2.html"
If My.Settings.FirAs = "" Then
My.Settings.FirAs = "FirAs"
My.Settings.Save()
End If
Dim hamdane As String = My.Settings.FirAs
File.WriteAllText(txtFile, File.ReadAllText(txtFile).Replace(hamdane, Me.channels_url))

وبكده كل عملية تغيير فى الملف للقيمة من خلال الضغط الزر سيتم تسجيلها فى My.Settings.FirAs
هيكون الامر سهل انه يستعين القيمة الاخير المستخدمة

طيب وللاحتياط اكتر
عند اغلاق البرنامج طبق الكود التالى
كود :
My.Settings.FirAs = ""
My.Settings.Save()

مع كود استرجاع الملف الى الكود الافتراضي

يارب الفكرة تكون واضحة

والرجاء مراجعة الكود انا قمت بكتابة الكود يدوياً 
مع النسخ الكواد من التعليقات السابقة
حيث لا يكون خطاء باحرف او ما شبه

تحياتى لك 
وتمنياتى لك التوفيق
اخي الغالي لا جديد يذكر نفس المشكل 
هل يمكنك التعديل على المشروع الذي رفعته سابقا الله يحفظك
بدلاً من تعقيد الامور وتغيير فى الاكواد او اضافات كثيرة

فقط قم بفتح المشروع لديك
وقم باستبدال كود Sub chan()

بالكود التالى:
كود :
Public Sub chan()
       My.Computer.FileSystem.CopyFile(Application.StartupPath & "\FIRAS\P2.html", Application.StartupPath & "\P2.html", True)
       Dim txtFile As String = "P2.html"
       Dim hamdane As String = "FirAs"
       System.IO.File.WriteAllText(txtFile, System.IO.File.ReadAllText(txtFile).Replace(hamdane, Me.channels_url))
       Me.WebBrowser1.Navigate("http://localhost:19762/P2.html")

   End Sub

بكده الملف الرئيسي لعرض القناه 
PHP كود :
P2.html 

والذى يوجد بجانب البرنامج
بينما النسخة الافتراضية يجب ان تكون فى مجلد بجانب البرنامج 
كما هو موضح هنا
PHP كود :
\FIRAS\P2.html 

تم تجربة الامر ويعمل فى كل مرة يتم الضغط الزر بتغيير الرابط

تحياتى لك
وتمنياتى لك التوفيق
هو صحيح بيغير الرابط وبتفتح القناة بس لو رجعت عليها تاني بيجيبلك ايرور انها شغاله قبل كده مش عارف يعدل علي الملف
ممكن كود لغلق القناه بعد الانتهاء منها
(26-05-18, 05:40 AM)elgokr كتب : [ -> ]
بدلاً من تعقيد الامور وتغيير فى الاكواد او اضافات كثيرة

فقط قم بفتح المشروع لديك
وقم باستبدال كود Sub chan()

بالكود التالى:
كود :
Public Sub chan()
       My.Computer.FileSystem.CopyFile(Application.StartupPath & "\FIRAS\P2.html", Application.StartupPath & "\P2.html", True)
       Dim txtFile As String = "P2.html"
       Dim hamdane As String = "FirAs"
       System.IO.File.WriteAllText(txtFile, System.IO.File.ReadAllText(txtFile).Replace(hamdane, Me.channels_url))
       Me.WebBrowser1.Navigate("http://localhost:19762/P2.html")

   End Sub

بكده الملف الرئيسي لعرض القناه 
PHP كود :
P2.html 

والذى يوجد بجانب البرنامج
بينما النسخة الافتراضية يجب ان تكون فى مجلد بجانب البرنامج 
كما هو موضح هنا
PHP كود :
\FIRAS\P2.html 

تم تجربة الامر ويعمل فى كل مرة يتم الضغط الزر بتغيير الرابط

تحياتى لك
وتمنياتى لك التوفيق
طب ممكن يا جوكر انت تعدل علي المشروع ؟ اصل انا حاولت اعملها ومش راضية تشغل القناة