diff -urN winsparkle-0.7.0/include/winsparkle.h.orig winsparkle-0.7.0/include/winsparkle.h
--- winsparkle-0.7.0/include/winsparkle.h.orig	2020-06-07 10:50:21.000000000 +0200
+++ winsparkle-0.7.0/include/winsparkle.h	2022-05-19 09:40:17.921695300 +0200
@@ -27,6 +27,7 @@
 #define _winsparkle_h_
 
 #include <stddef.h>
+#include <time.h>
 
 #include "winsparkle-version.h"
 

diff -urN winsparkle-0.7.0/src/error.h.orig winsparkle-0.7.0/src/error.h
--- winsparkle-0.7.0/src/error.h.orig	2020-06-07 10:50:21.000000000 +0200
+++ winsparkle-0.7.0/src/error.h	2022-05-19 09:52:30.435447600 +0200
@@ -27,6 +27,7 @@
 #define _error_h_
 
 #include <stdexcept>
+#include <string>
 
 namespace winsparkle
 {

diff -urN winsparkle-0.7.0/src/ui.cpp.orig winsparkle-0.7.0/src/ui.cpp
--- winsparkle-0.7.0/src/ui.cpp.orig	2020-06-07 10:50:21.000000000 +0200
+++ winsparkle-0.7.0/src/ui.cpp	2022-05-19 10:07:11.258755200 +0200
@@ -1070,7 +1070,7 @@
                 VARIANT *param;
                 SafeArrayAccessData(psaStrings, (LPVOID*) &param);
                 param->vt = VT_BSTR;
-                param->bstrVal = wxBasicString(wxString::FromUTF8(info.Description.c_str())).Detach();
+                param->bstrVal = wxBasicString(wxString::FromUTF8(info.Description.c_str())).Get();
                 SafeArrayUnaccessData(psaStrings);
 
                 doc->write(psaStrings);
