mirror of
https://gitlab.com/cleanflash/installer.git
synced 2026-08-13 02:41:38 +08:00
Compare commits
10
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4463ce143f | ||
|
|
c0a292cff9 | ||
|
|
c1876bc6af | ||
|
|
2ebc6b9a41 | ||
|
|
93aa977a47 | ||
|
|
6f68332a30 | ||
|
|
1a655714d2 | ||
|
|
2a9a812715 | ||
|
|
d2707e3e7e | ||
|
|
b3e9573bad |
@@ -21,7 +21,7 @@
|
|||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net40" Version="1.0.2">
|
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net40" Version="1.0.3">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
|||||||
@@ -51,6 +51,10 @@ namespace CleanFlashCommon {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (file.Extension.ToLower().Equals(".ocx")) {
|
||||||
|
Uninstaller.UnregisterActiveX(file.FullName);
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
file.IsReadOnly = false;
|
file.IsReadOnly = false;
|
||||||
file.Delete();
|
file.Delete();
|
||||||
|
|||||||
@@ -27,6 +27,24 @@ namespace CleanFlashCommon {
|
|||||||
WinAPI.AllowModifications();
|
WinAPI.AllowModifications();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void UnregisterActiveX(string filename) {
|
||||||
|
string relativeFilename = Path.GetFileName(filename);
|
||||||
|
ProcessStartInfo info = new ProcessStartInfo {
|
||||||
|
FileName = "regsvr32.exe",
|
||||||
|
UseShellExecute = false,
|
||||||
|
CreateNoWindow = true
|
||||||
|
};
|
||||||
|
|
||||||
|
Directory.SetCurrentDirectory(Path.GetDirectoryName(filename));
|
||||||
|
|
||||||
|
info.Arguments = "/s /u " + relativeFilename;
|
||||||
|
ExitedProcess process = ProcessUtils.RunProcess(info);
|
||||||
|
|
||||||
|
if (!process.IsSuccessful) {
|
||||||
|
throw new InstallException(string.Format("Failed to unregister ActiveX plugin: error code {0}\n\n{1}", process.ExitCode, process.Output));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static void UninstallRegistry() {
|
public static void UninstallRegistry() {
|
||||||
if (Environment.Is64BitOperatingSystem) {
|
if (Environment.Is64BitOperatingSystem) {
|
||||||
RegistryManager.ApplyRegistry(Properties.Resources.uninstallRegistry, Properties.Resources.uninstallRegistry64);
|
RegistryManager.ApplyRegistry(Properties.Resources.uninstallRegistry, Properties.Resources.uninstallRegistry64);
|
||||||
|
|||||||
@@ -32,14 +32,15 @@ namespace CleanFlashCommon {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public class UpdateChecker {
|
public class UpdateChecker {
|
||||||
private static readonly string FLASH_VERSION = "34.0.0.267";
|
private static readonly string FLASH_VERSION = "34.0.0.317";
|
||||||
private static readonly string VERSION = "34.0.0.267";
|
private static readonly string VERSION = "34.0.0.317";
|
||||||
private static readonly string AUTHOR = "cleanflash";
|
private static readonly string AUTHOR = "cleanflash";
|
||||||
private static readonly string REPO = "installer";
|
private static readonly string REPO = "installer";
|
||||||
private static readonly string USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36";
|
private static readonly string USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36";
|
||||||
|
|
||||||
public static string GetAPILink() {
|
public static string GetAPILink() {
|
||||||
return "https://api.github.com/repos/" + AUTHOR + "/" + REPO + "/releases/latest";
|
return "https://api.github.com/repos/" + AUTHOR + "/" + REPO + "/releases/latest";
|
||||||
|
// obsolete, todo: switch to new api
|
||||||
}
|
}
|
||||||
|
|
||||||
public static string GetFlashVersion() {
|
public static string GetFlashVersion() {
|
||||||
|
|||||||
@@ -7,11 +7,11 @@
|
|||||||
<TargetFramework>net40</TargetFramework>
|
<TargetFramework>net40</TargetFramework>
|
||||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||||
<StartupObject></StartupObject>
|
<StartupObject></StartupObject>
|
||||||
<Product>Clean Flash Player 34.0.0.267 Installer</Product>
|
<Product>Clean Flash Player 34.0.0.317 Installer</Product>
|
||||||
<AssemblyTitle>Clean Flash Player 34.0.0.267 Installer</AssemblyTitle>
|
<AssemblyTitle>Clean Flash Player 34.0.0.317 Installer</AssemblyTitle>
|
||||||
<FileVersion>34.0.0.267</FileVersion>
|
<FileVersion>34.0.0.317</FileVersion>
|
||||||
<AssemblyVersion>34.0.0.267</AssemblyVersion>
|
<AssemblyVersion>34.0.0.317</AssemblyVersion>
|
||||||
<Version>34.0.0.267</Version>
|
<Version>34.0.0.317</Version>
|
||||||
<Authors>FlashPatch Team</Authors>
|
<Authors>FlashPatch Team</Authors>
|
||||||
<Company>FlashPatch Team</Company>
|
<Company>FlashPatch Team</Company>
|
||||||
<ApplicationIcon>icon.ico</ApplicationIcon>
|
<ApplicationIcon>icon.ico</ApplicationIcon>
|
||||||
@@ -19,17 +19,6 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Remove="cleanflash.7z" />
|
<None Remove="cleanflash.7z" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<COMReference Include="IWshRuntimeLibrary">
|
|
||||||
<WrapperTool>tlbimp</WrapperTool>
|
|
||||||
<VersionMinor>0</VersionMinor>
|
|
||||||
<VersionMajor>1</VersionMajor>
|
|
||||||
<Guid>f935dc20-1cf0-11d0-adb9-00c04fd58a0b</Guid>
|
|
||||||
<Lcid>0</Lcid>
|
|
||||||
<Isolated>false</Isolated>
|
|
||||||
<EmbedInteropTypes>true</EmbedInteropTypes>
|
|
||||||
</COMReference>
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="icon.ico" />
|
<Content Include="icon.ico" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
@@ -52,7 +41,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="ILRepack.Lib.MSBuild.Task" Version="2.0.18.2" />
|
<PackageReference Include="ILRepack.Lib.MSBuild.Task" Version="2.0.18.2" />
|
||||||
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net40" Version="1.0.2">
|
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net40" Version="1.0.3">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
|||||||
@@ -8,11 +8,10 @@ using System.Windows.Forms;
|
|||||||
namespace CleanFlashInstaller {
|
namespace CleanFlashInstaller {
|
||||||
public partial class InstallForm : Form, IProgressForm {
|
public partial class InstallForm : Form, IProgressForm {
|
||||||
private static string COMPLETE_INSTALL_TEXT = @"Clean Flash Player has been successfully installed!
|
private static string COMPLETE_INSTALL_TEXT = @"Clean Flash Player has been successfully installed!
|
||||||
Don't forget, Flash Player is no longer compatible with new browsers. We recommend using:
|
Don't forget, Flash Player is no longer compatible with new browsers.
|
||||||
• Older Google Chrome ≤ 87
|
|
||||||
• Older Mozilla Firefox ≤ 84 or Waterfox
|
|
||||||
|
|
||||||
For Flash Player updates, check out Clean Flash Player's website!";
|
For browser recommendations and Flash Player updates,
|
||||||
|
check out Clean Flash Player's website!";
|
||||||
private static string COMPLETE_UNINSTALL_TEXT = @"
|
private static string COMPLETE_UNINSTALL_TEXT = @"
|
||||||
All versions of Flash Player have been successfully uninstalled.
|
All versions of Flash Player have been successfully uninstalled.
|
||||||
|
|
||||||
@@ -127,8 +126,7 @@ If you ever change your mind, check out Clean Flash Player's website!";
|
|||||||
|
|
||||||
if (pepperBox.Checked || netscapeBox.Checked || activeXBox.Checked) {
|
if (pepperBox.Checked || netscapeBox.Checked || activeXBox.Checked) {
|
||||||
completeLabel.Text = COMPLETE_INSTALL_TEXT;
|
completeLabel.Text = COMPLETE_INSTALL_TEXT;
|
||||||
completeLabel.Links.Add(new LinkLabel.Link(212, 8));
|
completeLabel.Links.Add(new LinkLabel.Link(187, 28));
|
||||||
completeLabel.Links.Add(new LinkLabel.Link(260, 28));
|
|
||||||
} else {
|
} else {
|
||||||
completeLabel.Text = COMPLETE_UNINSTALL_TEXT;
|
completeLabel.Text = COMPLETE_UNINSTALL_TEXT;
|
||||||
completeLabel.Links.Add(new LinkLabel.Link(110, 28));
|
completeLabel.Links.Add(new LinkLabel.Link(110, 28));
|
||||||
@@ -283,11 +281,7 @@ If you ever change your mind, check out Clean Flash Player's website!";
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void completeLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {
|
private void completeLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {
|
||||||
if (e.Link.Start == 212) {
|
Process.Start("https://gitlab.com/cleanflash/installer#clean-flash-player");
|
||||||
Process.Start("https://classic.waterfox.net");
|
|
||||||
} else {
|
|
||||||
Process.Start("https://cleanflash.github.io");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void copyErrorButton_Click(object sender, EventArgs e) {
|
private void copyErrorButton_Click(object sender, EventArgs e) {
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
using CleanFlashCommon;
|
using CleanFlashCommon;
|
||||||
using System;
|
using System;
|
||||||
|
using System.Text;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
@@ -7,20 +8,29 @@ using System.Diagnostics;
|
|||||||
using SharpCompress.Archives.SevenZip;
|
using SharpCompress.Archives.SevenZip;
|
||||||
using SharpCompress.Common;
|
using SharpCompress.Common;
|
||||||
using SharpCompress.Readers;
|
using SharpCompress.Readers;
|
||||||
using IWshRuntimeLibrary;
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
namespace CleanFlashInstaller {
|
namespace CleanFlashInstaller {
|
||||||
public class Installer {
|
public class Installer {
|
||||||
public static void RegisterActiveX(string filename) {
|
public static void RegisterActiveX(string filename) {
|
||||||
|
string relativeFilename = Path.GetFileName(filename);
|
||||||
|
ProcessStartInfo info = new ProcessStartInfo {
|
||||||
|
FileName = "regsvr32.exe",
|
||||||
|
UseShellExecute = false,
|
||||||
|
CreateNoWindow = true
|
||||||
|
};
|
||||||
|
|
||||||
Directory.SetCurrentDirectory(Path.GetDirectoryName(filename));
|
Directory.SetCurrentDirectory(Path.GetDirectoryName(filename));
|
||||||
ExitedProcess process = ProcessUtils.RunProcess(
|
|
||||||
new ProcessStartInfo {
|
info.Arguments = "/s /u " + relativeFilename;
|
||||||
FileName = "regsvr32.exe",
|
ExitedProcess process = ProcessUtils.RunProcess(info);
|
||||||
Arguments = "/s " + Path.GetFileName(filename),
|
|
||||||
UseShellExecute = false,
|
if (!process.IsSuccessful) {
|
||||||
CreateNoWindow = true
|
throw new InstallException(string.Format("Failed to unregister ActiveX plugin: error code {0}\n\n{1}", process.ExitCode, process.Output));
|
||||||
}
|
}
|
||||||
);
|
|
||||||
|
info.Arguments = "/s " + relativeFilename;
|
||||||
|
process = ProcessUtils.RunProcess(info);
|
||||||
|
|
||||||
if (!process.IsSuccessful) {
|
if (!process.IsSuccessful) {
|
||||||
throw new InstallException(string.Format("Failed to register ActiveX plugin: error code {0}\n\n{1}", process.ExitCode, process.Output));
|
throw new InstallException(string.Format("Failed to register ActiveX plugin: error code {0}\n\n{1}", process.ExitCode, process.Output));
|
||||||
@@ -75,16 +85,24 @@ namespace CleanFlashInstaller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void CreateShortcut(string folder, string executable, string name, string description) {
|
public static void CreateShortcut(string folder, string executable, string name, string description) {
|
||||||
WshShell wsh = new WshShell();
|
Type t = Type.GetTypeFromCLSID(new Guid("72C24DD5-D70A-438B-8A42-98424B88AFB8"));
|
||||||
IWshShortcut shortcut = wsh.CreateShortcut(Path.Combine(folder, name + ".lnk")) as IWshShortcut;
|
dynamic shell = Activator.CreateInstance(t);
|
||||||
|
|
||||||
shortcut.Arguments = "";
|
try {
|
||||||
shortcut.TargetPath = executable;
|
var lnk = shell.CreateShortcut(Path.Combine(folder, name + ".lnk"));
|
||||||
shortcut.WindowStyle = (int) WshWindowStyle.WshNormalFocus;
|
|
||||||
shortcut.Description = description;
|
try {
|
||||||
shortcut.WorkingDirectory = Path.GetDirectoryName(executable);
|
lnk.TargetPath = executable;
|
||||||
shortcut.IconLocation = executable;
|
lnk.IconLocation = executable;
|
||||||
shortcut.Save();
|
lnk.Description = description;
|
||||||
|
lnk.WorkingDirectory = folder;
|
||||||
|
lnk.Save();
|
||||||
|
} finally {
|
||||||
|
Marshal.FinalReleaseComObject(lnk);
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
Marshal.FinalReleaseComObject(shell);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void InstallFromArchive(SevenZipArchive archive, IProgressForm form, InstallFlags flags) {
|
private static void InstallFromArchive(SevenZipArchive archive, IProgressForm form, InstallFlags flags) {
|
||||||
@@ -166,4 +184,4 @@ namespace CleanFlashInstaller {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -130,11 +130,11 @@
|
|||||||
|
|
||||||
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Clean Flash Player]
|
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Clean Flash Player]
|
||||||
"DisplayName"="Clean Flash Player ${VERSION}"
|
"DisplayName"="Clean Flash Player ${VERSION}"
|
||||||
"HelpLink"="https://cleanflash.github.io"
|
"HelpLink"="https://gitlab.com/cleanflash/installer#clean-flash-player"
|
||||||
"NoModify"=dword:00000001
|
"NoModify"=dword:00000001
|
||||||
"NoRepair"=dword:00000001
|
"NoRepair"=dword:00000001
|
||||||
"URLInfoAbout"="https://cleanflash.github.io"
|
"URLInfoAbout"="https://gitlab.com/cleanflash/installer#clean-flash-player"
|
||||||
"URLUpdateInfo"="https://cleanflash.github.io"
|
"URLUpdateInfo"="https://gitlab.com/cleanflash/installer#clean-flash-player"
|
||||||
"VersionMajor"=dword:00000022
|
"VersionMajor"=dword:00000022
|
||||||
"VersionMinor"=dword:00000000
|
"VersionMinor"=dword:00000000
|
||||||
"Publisher"="CleanFlash Team"
|
"Publisher"="CleanFlash Team"
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||||
<ApplicationIcon>icon.ico</ApplicationIcon>
|
<ApplicationIcon>icon.ico</ApplicationIcon>
|
||||||
<StartupObject></StartupObject>
|
<StartupObject></StartupObject>
|
||||||
<Product>Clean Flash Player 34.0.0.267 Uninstaller</Product>
|
<Product>Clean Flash Player 34.0.0.317 Uninstaller</Product>
|
||||||
<AssemblyTitle>Clean Flash Player 34.0.0.267 Uninstaller</AssemblyTitle>
|
<AssemblyTitle>Clean Flash Player 34.0.0.317 Uninstaller</AssemblyTitle>
|
||||||
<FileVersion>34.0.0.267</FileVersion>
|
<FileVersion>34.0.0.317</FileVersion>
|
||||||
<AssemblyVersion>34.0.0.267</AssemblyVersion>
|
<AssemblyVersion>34.0.0.317</AssemblyVersion>
|
||||||
<Version>34.0.0.267</Version>
|
<Version>34.0.0.317</Version>
|
||||||
<Authors>FlashPatch Team</Authors>
|
<Authors>FlashPatch Team</Authors>
|
||||||
<Company>FlashPatch Team</Company>
|
<Company>FlashPatch Team</Company>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
@@ -35,7 +35,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="ILRepack.Lib.MSBuild.Task" Version="2.0.18.2" />
|
<PackageReference Include="ILRepack.Lib.MSBuild.Task" Version="2.0.18.2" />
|
||||||
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net40" Version="1.0.2">
|
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies.net40" Version="1.0.3">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
|||||||
@@ -114,11 +114,7 @@ namespace CleanFlashUninstaller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void completeLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {
|
private void completeLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {
|
||||||
if (e.Link.Start == 212) {
|
Process.Start("https://gitlab.com/cleanflash/installer#clean-flash-player");
|
||||||
Process.Start("https://classic.waterfox.net");
|
|
||||||
} else {
|
|
||||||
Process.Start("https://cleanflash.github.io");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void copyErrorButton_Click(object sender, EventArgs e) {
|
private void copyErrorButton_Click(object sender, EventArgs e) {
|
||||||
|
|||||||
@@ -28,14 +28,26 @@ To keep using Flash Player on **Mozilla Firefox**, install [**Waterfox Classic**
|
|||||||
|
|
||||||
**Internet Explorer** still supports Flash Player on Windows 10.
|
**Internet Explorer** still supports Flash Player on Windows 10.
|
||||||
|
|
||||||
|
<details><summary>Alternatives</summary>
|
||||||
|
|
||||||
|
- [Cent Browser 4.3.9.248](https://static.centbrowser.com/win_stable/4.3.9.248)
|
||||||
|
- [Chromium 88.0.4285.0](https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html): specify your platform and select/enter 814251
|
||||||
|
- [Basilisk](https://www.basilisk-browser.org)
|
||||||
|
- [Otter Browser](https://otter-browser.org)
|
||||||
|
- [roytam's XP-compatible browser builds](http://rtfreesoft.blogspot.com)
|
||||||
|
- [Portable old browser versions (guide)](https://www.raymond.cc/blog/how-to-enable-flash-support-in-firefox-portable)
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
- Make sure you have a compatible browser to use Flash Player with
|
- Make sure you have a compatible browser to use Flash Player with
|
||||||
- Download the latest version from [GitLab](https://gitlab.com/cleanflash/installer/-/releases)
|
- Download the latest version from [GitLab](https://gitlab.com/cleanflash/installer/-/releases)
|
||||||
- Extract the installer and run it
|
- Launch installer
|
||||||
- Accept the disclaimer
|
- Accept the disclaimer
|
||||||
- Choose which browser plugins to install
|
- Choose which browser plugins to install
|
||||||
- Choose to install the standalone projector or not
|
- Choose to install the standalone projector or not
|
||||||
|
- Choose to install the debug build or not
|
||||||
- Close all browser windows, or let the installer close them for you
|
- Close all browser windows, or let the installer close them for you
|
||||||
- Press the "Install" button and wait for Flash Player to install
|
- Press the "Install" button and wait for Flash Player to install
|
||||||
- Enjoy using Flash Player!
|
- Enjoy using Flash Player!
|
||||||
|
|||||||
Reference in New Issue
Block a user