Запуск макроса с командной строки
Ребята у меня вот какая проблема. У меня есть макрос, который работает с презентаций. Он вытаскивает свойства презентации, такие как автор, название, дата создания и т.д и записывает их в xml файл.
Он работает, но только внутри презентации.(Сервис-Макросы-Выполнить)
Я попыталась переделать его. Однако он запускается с командой строки не выдает ошибки и, но ничего не делает.
Поскажите в чем ошиблась!!!!!!
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Module1" script:language="StarBasic">REM ***** BASIC *****
Sub Main
PresInfo(cFile)
End Sub
Sub PresInfo(cFile)
cURL = ConvertToURL( cFile )
oDoc = StarDesktop.loadComponentFromURL( cURL, "_blank", 0, Array(_
MakePropertyValue( "Hidden", True ),_
) )
oPresentation = CreateUnoService("com.sun.star.presentation.Presen tation")
oPresentation = oDoc.getPresentation()
oPage = oDoc.getDrawPages().getCount()
cLang = oDoc.CharLocale.Language
CD = oDoc.DocumentInfo.CreationDate
oDes=oDoc.DocumentInfo.Description
cAuthor = oDoc.DocumentInfo.Author
sTitle = oDoc.DocumentInfo.Title
oleService = createUnoService("com.sun.star.bridge.OleObjectFac tory")
oXMLDOM = oleService.createInstance("Msxml.DOMDocument")
oXMLDOM_Rootelem = oXMLDOM.createElement("PresentationInfo")
oXMLDOM.appendChild(oXMLDOM_Rootelem)
oXMLDOM_elem = oXMLDOM.createElement("Author")
'oXMLDOM_elem.setAttribute("author_name",cAuthor)
oXMLDOM_elem.Text = cAuthor
oXMLDOM_elem1 = oXMLDOM.createElement("Title")
oXMLDOM_elem1.Text = sTitle
oXMLDOM_elem2 = oXMLDOM.createElement("Description")
oXMLDOM_elem2.Text = oDes
oXMLDOM_elem3 = oXMLDOM.createElement("PublicationDate")
oXMLDOM_elem3.Text = CD.Day & " " & CD.Month & " " & CD.Year
oXMLDOM_elem4 = oXMLDOM.createElement("Lang")
oXMLDOM_elem4.Text = cLang
oXMLDOM_elem5 = oXMLDOM.createElement("PageCount")
oXMLDOM_elem5.Text = oPage
oXMLDOM_elem6 = oXMLDOM.createElement("SlidesInfo")
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem)
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem1)
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem2)
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem3)
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem4)
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem5)
oXMLDOM_Rootelem.appendChild(oXMLDOM_elem6)
For i=0 To oPage-1
sDuration=oDoc.getDrawPages().getByIndex(i).getPro pertyValue("Duration")
sSlideName=oDoc.getDrawPages().getByIndex(i).getNa me()
oXMLDOM_elem7 = oXMLDOM.createElement("Slide")
oXMLDOM_elem8 = oXMLDOM.createElement("Number")
oXMLDOM_elem8.Text=i
oXMLDOM_elem9 = oXMLDOM.createElement("Name")
oXMLDOM_elem9.Text = sSlideName(i)
oXMLDOM_elem10 = oXMLDOM.createElement("Duration")
oXMLDOM_elem10.Text = sDuration(i)
a="img" & i
oXMLDOM_elem11 = oXMLDOM.createElement("ImageURL")
oXMLDOM_elem11.Text = a & ".jpg"
oXMLDOM_elem12 = oXMLDOM.createElement("ImageMimeType")
oXMLDOM_elem12.Text = "image/jpeg"
b="audio" & i
oXMLDOM_elem13 = oXMLDOM.createElement("AudioURL")
oXMLDOM_elem13.Text = b & ".mp3"
oXMLDOM_elem14 = oXMLDOM.createElement("AudioMimeType")
oXMLDOM_elem14.Text = "audio/mp3"
oXMLDOM_elem6.appendChild(oXMLDOM_elem7)
oXMLDOM_elem7.appendChild(oXMLDOM_elem8) ' print oXMLDOM_Rootelem.hasChildNodes() 'true
oXMLDOM_elem7.appendChild(oXMLDOM_elem9)
oXMLDOM_elem7.appendChild(oXMLDOM_elem10)
oXMLDOM_elem7.appendChild(oXMLDOM_elem11)
oXMLDOM_elem7.appendChild(oXMLDOM_elem12)
oXMLDOM_elem7.appendChild(oXMLDOM_elem13)
oXMLDOM_elem7.appendChild(oXMLDOM_elem14)
oXMLDOM.save("D:\Temp\new.xml")
Next
oDoc.close( True )
End Sub
Function MakePropertyValue( Optional cName As String, Optional uValue ) As com.sun.star.beans.PropertyValue
oPropertyValue = createUnoStruct( "com.sun.star.beans.PropertyValue" )
If Not IsMissing( cName ) Then
oPropertyValue.Name = cName
EndIf
If Not IsMissing( uValue ) Then
oPropertyValue.Value = uValue
EndIf
MakePropertyValue() = oPropertyValue
End Function
</script:module>