我可以使用VBScript为Base64编码的GIF?(Can I use VBScript to

2019-10-29 13:24发布

我正在试图做的是编码gif文件,XML文档中包含。 这是我现在,但它似乎并没有工作。

Function gifToBase64(strGifFilename)
 On Error Resume Next
 Dim strBase64
 Set inputStream = WScript.CreateObject("ADODB.Stream")
 inputStream.LoadFromFile strGifFilename
 strBase64 = inputStream.Text
 Set inputStream = Nothing
 gifToBase64 = strBase64
End Function

Answer 1:

我最近写了一篇关于这个主题在实现的JScript和VBScript中 。 这里是解决方案,我有VBScript的:

Public Function convertImageToBase64(filePath)
  Dim inputStream
  Set inputStream = CreateObject("ADODB.Stream")
  inputStream.Open
  inputStream.Type = 1  ' adTypeBinary
  inputStream.LoadFromFile filePath
  Dim bytes: bytes = inputStream.Read
  Dim dom: Set dom = CreateObject("Microsoft.XMLDOM")
  Dim elem: Set elem = dom.createElement("tmp")
  elem.dataType = "bin.base64"
  elem.nodeTypedValue = bytes
  convertImageToBase64 = "data:image/png;base64," & Replace(elem.text, vbLf, "")
End Function


Answer 2:

在以托默勒格您的评论你的国家,你不希望使用外部DLL但在你试图例如您尝试使用ADODB。 因此,我怀疑你的意思是你不想安装本身不存在于vanilia windows平台的DLL。

如果是这样的话MSXML可能是你的答案 -

Function Base64Encode(rabyt)

    Dim dom: Set dom = CreateObject("MSXML2.DOMDocument.3.0")
    Dim elem: Set elem = dom.appendChild(dom.createElement("root"))
    elem.dataType = "bin.base64"
    elem.nodeTypedValue = rabyt

    Base64Encode = elem.Text

End Function


Answer 3:

看看这里: Base64编码和解码文件使用VBScript 。 本实施例中依赖于自由上XBase64分量并且仅提供一个包装用于文件处理。

你也可以去一个纯粹的VBScript实 ,但在这里,你必须照顾文件处理自己。 应该不会太困难,但编码性能将没有那么好。 对于一些小的图像文件,这将是足够的,但。

谷歌将关闭多了起来。



文章来源: Can I use VBScript to base64 encode a gif?