VBScript
VBScript
SharePoint -- Copy a File to a New Location
Copies a file to a new SharePoint location.Chilkat VBScript Downloads
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)
success = 0
' This requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
set http = CreateObject("Chilkat.Http")
' If SharePoint Windows classic authentication is used, then set the
' Login, Password, LoginDomain, and NtlmAuth properties.
http.Login = "SHAREPOINT_USERNAME"
http.Password = "SHAREPOINT_PASSWORD"
http.LoginDomain = "SHAREPOINT_NTLM_DOMAIN"
http.NtlmAuth = 1
' The more common case is to use SharePoint Online authentication (via the SPOIDCRL cookie).
' If so, do not set Login, Password, LoginDomain, and NtlmAuth, and instead
' establish the cookie as shown at SharePoint Online Authentication
' Indicate that we want a JSON reply
http.Accept = "application/json;odata=verbose"
set req = CreateObject("Chilkat.HttpRequest")
req.HttpVerb = "POST"
' Copies the file /ChilkatDocLibrary/sample.docx to /Documents/ChilkatTest/sampleA.docx
req.Path = "/_api/web/GetFileByServerRelativeUrl('/ChilkatDocLibrary/sample.docx')/copyto(strnewurl='/Documents/ChilkatTest/sampleA.docx',boverwrite=false)"
' We need to add a form digest value in the X-RequestDigest header field.
' See this example for details on
' how to get (and cache) a form digest value
req.AddHeader "X-RequestDigest","SHAREPOINT_FORM_DIGEST"
' Send the request to copy the document.
bUseTls = 1
set resp = CreateObject("Chilkat.HttpResponse")
success = http.HttpSReq("SHAREPOINT_HTTPS_DOMAIN",443,bUseTls,req,resp)
If (success = 0) Then
outFile.WriteLine(http.LastErrorText)
WScript.Quit
End If
' A successful update will return a 200 status code with an empty body.
' A non-successful update will return a JSON response body..
If (resp.StatusCode <> 200) Then
outFile.WriteLine("Response status code = " & resp.StatusCode)
set json = CreateObject("Chilkat.JsonObject")
success = json.Load(resp.BodyStr)
json.EmitCompact = 0
outFile.WriteLine(json.Emit())
outFile.WriteLine("Failed")
WScript.Quit
End If
outFile.WriteLine("Success.")
outFile.Close