كود عرص ملف الوورد داخل أدات WebBrowser - alsaab120 - 22-02-23
السلام عليكم ورحمة الله وبركاته
احببت اشارك معكم هذا الكود لعرض ملف الوورد داخل ادات WebBrowser
اولا الكود
كود :
Public Sub ssss()
Dim fileName1 As String
Dim ofd As New OpenFileDialog
ofd.Title = "اختر الملف"
If ofd.ShowDialog = DialogResult.OK Then
fileName1 = ofd.FileName
Else
Exit Sub
End If
Dim typeWord As Type = Type.GetTypeFromProgID("Word.Application")
Dim WordApp As Object = Activator.CreateInstance(typeWord)
Dim htmlFormat As Integer = 8
Dim Docpath As Object() = {fileName1}
Dim HtmPath As Object() = {Application.StartupPath & "\WordDoc.HTML", htmlFormat}
Dim WordDocs As Object = typeWord.InvokeMember("Documents", Reflection.BindingFlags.GetProperty, Nothing, WordApp, Nothing)
Dim doc As Object = WordDocs.GetType.InvokeMember("Open", Reflection.BindingFlags.InvokeMethod, Nothing, WordDocs, Docpath)
doc.GetType.InvokeMember("SaveAs", Reflection.BindingFlags.InvokeMethod, Nothing, doc, HtmPath)
WordApp.quit()
WebBrowser1.Visible = True
WebBrowser1.Navigate(HtmPath(0))
End Sub
RE: كود عرص ملف الوورد داخل أدات WebBrowser - sanyor77 - 26-03-23
وعليكم السلام ورحمة الله وبركاته، شكرًا لك على مشاركة الكود. يبدو أن الكود يقوم بفتح ملف Word وتحويله إلى ملف HTML، ثم يعرض الملف المحول في عنصر التحكم WebBrowser. لا يبدو أن هناك أخطاء بارزة في الكود، ولكن هناك بعض النقاط التي يمكن تحسينها. على سبيل المثال:
- يفضل استخدام "Using" statement لتحرير الموارد بشكل صحيح في حالة حدوث خطأ أثناء تشغيل البرنامج
- يمكن تحسين نطاق المتغيرات وتحديد النوع مباشرةً.
- من الأفضل استخدام مؤشرات على الخصائص والأساليب بدلاً من Reflection.
- يفضل التحقق من وجود ملفات Word وتحميلها قبل استخدامها.
- يمكن تحسين التعليقات والوصف لتوضيح كيفية عمل الكود.
إليك الكود مع التحسينات المقترحة:
كود :
Public Sub DisplayWordDocumentInWebBrowser()
Using ofd As New OpenFileDialog()
ofd.Title = "اختر الملف"
If ofd.ShowDialog() = DialogResult.OK Then
Dim fileName1 As String = ofd.FileName
' التحقق من وجود تثبيت Word
If Type.GetTypeFromProgID("Word.Application") Is Nothing Then
MessageBox.Show("يجب تثبيت Word على جهاز الكمبيوتر الخاص بك لاستخدام هذه الميزة.")
Exit Sub
End If
' فتح Word وتحويل الملف إلى HTML
Dim typeWord As Type = Type.GetTypeFromProgID("Word.Application")
Dim wordApp As Object = Activator.CreateInstance(typeWord)
Dim htmlFormat As Integer = 8
Dim docPath As Object() = {fileName1}
Dim htmlPath As Object() = {Application.StartupPath & "\WordDoc.HTML", htmlFormat}
Dim wordDocs As Object = wordApp.GetType().InvokeMember("Documents", Reflection.BindingFlags.GetProperty, Nothing, wordApp, Nothing)
Dim doc As Object = wordDocs.GetType().InvokeMember("Open", Reflection.BindingFlags.InvokeMethod, Nothing, wordDocs, docPath)
doc.GetType().InvokeMember("SaveAs", Reflection.BindingFlags.InvokeMethod, Nothing, doc, htmlPath)
wordApp.GetType().InvokeMember("Quit", Reflection.BindingFlags.InvokeMethod, Nothing, wordApp, Nothing)
' عرض الملف المحول في عنصر التحكم WebBrowser
WebBrowser1.Visible = True
WebBrowser1
|