<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBScript: Office Document to HTML Converter]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=3538&amp;type=atom" />
	<updated>2009-08-15T18:50:16Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=3538</id>
		<entry>
			<title type="html"><![CDATA[VBScript: Office Document to HTML Converter]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=27172#p27172" />
			<content type="html"><![CDATA[<p>Просматривать документы, и уж тем более читать книги в текстовом редакторе(процессоре) - мягко говоря, не практично <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />И думаю все со мной согласятся, что самый оптимальный вариант для просмотра и чтения это HTML в браузере.</p><p>Следующий скрипт использует Word&#039;овский COM-сервер для конвертирования документов в формат HTML.<br />MS office должен быть установлен.<br /><strong>Doc2HTML.vbs</strong><br /></p><div class="codebox"><pre><code>&#039;===============================
&#039; Office_Document to HTML Converter
&#039; Microsoft word - must be installed
&#039;===============================

Option Explicit

Dim objDialog,intResult
&#039;____________________________________________________________________
&#039; константы для форматов сохранения документа
&#039; на всякий пожарный
const xlCSV = 6
const xlTextMSDOS = 21
const xlWorkbookNormal = -4143
const RTF = 6
const Document = 0
const Text = 2
const DOSText = 4
CONST wdFormatHTML = 8
&#039;____________________________________________________________________

&#039; диалог выбора файла
If WScript.Arguments.Length=0 Then 
    Set objDialog = CreateObject(&quot;UserAccounts.CommonDialog&quot;)
    objDialog.Filter = &quot;Word Documents (*.doc, *.rtf)|*.doc;*.rtf|Все файлы (*.*)|*.*&quot;
    objDialog.FilterIndex = 1
    intResult = objDialog.ShowOpen
        If intResult = 0 Then
            Wscript.Quit 0
        Else
            Convert (objDialog.FileName)
        End If
else 
    Convert (wscript.arguments.item(0))    
End If
wscript.quit 0

&#039; Процедура преобразования
sub Convert(Fname)
Dim WordApp
Set WordApp = CreateObject(&quot;Word.Application&quot;)
WordApp.Documents.Open Fname
WordApp.ActiveDocument.SaveAs Fname+&quot;.html&quot;,wdFormatHTML
CreateObject (&quot;wscript.shell&quot;).run &quot;hh -800 &quot;+Fname+&quot;.html&quot;
WordApp.Quit
End Sub</code></pre></div><p>Пример:<br /></p><div class="quotebox"><blockquote><p>Doc2HTML.vbs sample.doc</p></blockquote></div><p>Или же просто перетащите в проводнике файл документа на иконку скрипта. В директории создасться файл sample.doc.html</p><br /><br /><br /><p>Чтобы зарегистрировать для файлов .Rtf&nbsp; и .Doc соответствующий пункт в меню проводника, выполните из директории хранения скрипта следующий BAT-файл:<br /><strong>INSTALL.BAT</strong><br /></p><div class="codebox"><pre><code>rem MS Office 2003
copy /Y Doc2HTML.vbs %windir%

REG ADD hkcr\Word.RTF.8\shell\RTF2HTML\command /ve /d &quot;wscript.exe &quot;&quot;&quot;%~dp0Doc2HTML.vbs&quot;&quot;&quot; &quot;&quot;&quot;%%1&quot;&quot;&quot;&quot; /f
REG ADD hkcr\Word.Document.8\shell\Doc2HTML\command /ve /d &quot;wscript.exe &quot;&quot;&quot;%~dp0Doc2HTML.vbs&quot;&quot;&quot; &quot;&quot;&quot;%%1&quot;&quot;&quot;&quot; /f</code></pre></div><p>__<br />С использованием материалов сайта Script-coding.com</p>]]></content>
			<author>
				<name><![CDATA[kiber_punk]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=23894</uri>
			</author>
			<updated>2009-08-15T18:50:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=27172#p27172</id>
		</entry>
</feed>
