Installer must run in foreground thread

This commit is contained in:
Jaex 2018-08-03 17:43:21 +03:00
parent 380f438444
commit 137ad5683d
2 changed files with 14 additions and 19 deletions

View file

@ -30,7 +30,6 @@ You should have received a copy of the GNU General Public License
using System.IO;
using System.Net;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace ShareX.HelpersLib
@ -127,11 +126,12 @@ private void RunInstallerWithDelay(int delay = 1000)
{
if (RunInstallerInBackground)
{
Task.Run(() =>
Thread thread = new Thread(() =>
{
Thread.Sleep(delay);
RunInstaller();
});
thread.Start();
}
else
{

View file

@ -51,7 +51,7 @@ public VideoThumbnailerForm(string ffmpegPath, VideoThumbnailOptions options)
pgOptions.SelectedObject = Options;
}
private void btnStart_Click(object sender, EventArgs e)
private async void btnStart_Click(object sender, EventArgs e)
{
string mediaPath = txtMediaPath.Text;
@ -64,10 +64,10 @@ private void btnStart_Click(object sender, EventArgs e)
pbProgress.Visible = true;
btnStart.Visible = false;
Task.Run(() =>
{
List<VideoThumbnailInfo> thumbnails = null;
List<VideoThumbnailInfo> thumbnails = null;
await Task.Run(() =>
{
try
{
VideoThumbnailer thumbnailer = new VideoThumbnailer(mediaPath, FFmpegPath, Options);
@ -78,20 +78,15 @@ private void btnStart_Click(object sender, EventArgs e)
{
ex.ShowError();
}
finally
{
this.InvokeSafe(() =>
{
if (thumbnails != null)
{
OnThumbnailsTaken(thumbnails);
}
btnStart.Visible = true;
pbProgress.Visible = false;
});
}
});
if (thumbnails != null)
{
OnThumbnailsTaken(thumbnails);
}
btnStart.Visible = true;
pbProgress.Visible = false;
}
}