Я использую ExtensionPackageUploader из ThingWorx для загрузки расширения через C #. Он работает, когда я запускаю его из Visual Studio , но после установки его в качестве службы Windows он больше не работает.
public void UploadExtensionToThingWorx()
{
string endpoint = "/Thingworx/ExtensionPackageUploader";
string url = "http://" + serverAddress + ":" + serverPort + endpoint;
string filePath = Path.Combine(ExecutionDirectory, ExtensionFileName);
byte[] fileContent = ReadFile(filePath);
string formDataBoundary = String.Format("----------{0:N}", Guid.NewGuid());
string contentType = "multipart/form-data; boundary=" + formDataBoundary;
byte[] formData = GetMultipartFormData(formDataBoundary, ExtensionFileName, fileContent);
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "POST";
request.ContentType = contentType;
request.CookieContainer = new CookieContainer();
request.ContentLength = formData.Length;
request.Headers.Add("AppKey", applicationKey);
request.Headers.Add("X-XSRF-TOKEN", "TWX-XSRF-TOKEN-VALUE");
using (Stream requestStream = request.GetRequestStream())
{
requestStream.Write(formData, 0, formData.Length);
requestStream.Close();
}
}
Код работает, когда я запускаю его напрямуюот Visual studio.