mirror of
https://gitlab.com/cleanflash/installer.git
synced 2026-08-13 02:41:38 +08:00
Compare commits
10
Commits
34.0.0.267
...
4463ce143f
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4463ce143f | ||
|
|
c0a292cff9 | ||
|
|
c1876bc6af | ||
|
|
2ebc6b9a41 | ||
|
|
93aa977a47 | ||
|
|
6f68332a30 | ||
|
|
1a655714d2 | ||
|
|
2a9a812715 | ||
|
|
d2707e3e7e | ||
|
|
b3e9573bad |
@@ -21,7 +21,7 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</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>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
|
||||
@@ -51,6 +51,10 @@ namespace CleanFlashCommon {
|
||||
return;
|
||||
}
|
||||
|
||||
if (file.Extension.ToLower().Equals(".ocx")) {
|
||||
Uninstaller.UnregisterActiveX(file.FullName);
|
||||
}
|
||||
|
||||
try {
|
||||
file.IsReadOnly = false;
|
||||
file.Delete();
|
||||
|
||||
@@ -27,6 +27,24 @@ namespace CleanFlashCommon {
|
||||
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() {
|
||||
if (Environment.Is64BitOperatingSystem) {
|
||||
RegistryManager.ApplyRegistry(Properties.Resources.uninstallRegistry, Properties.Resources.uninstallRegistry64);
|
||||
|
||||
@@ -32,14 +32,15 @@ namespace CleanFlashCommon {
|
||||
}
|
||||
|
||||
public class UpdateChecker {
|
||||
private static readonly string FLASH_VERSION = "34.0.0.267";
|
||||
private static readonly string VERSION = "34.0.0.267";
|
||||
private static readonly string FLASH_VERSION = "34.0.0.317";
|
||||
private static readonly string VERSION = "34.0.0.317";
|
||||
private static readonly string AUTHOR = "cleanflash";
|
||||
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() {
|
||||
return "https://api.github.com/repos/" + AUTHOR + "/" + REPO + "/releases/latest";
|
||||
// obsolete, todo: switch to new api
|
||||
}
|
||||
|
||||
public static string GetFlashVersion() {
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
<TargetFramework>net40</TargetFramework>
|
||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||
<StartupObject></StartupObject>
|
||||
<Product>Clean Flash Player 34.0.0.267 Installer</Product>
|
||||
<AssemblyTitle>Clean Flash Player 34.0.0.267 Installer</AssemblyTitle>
|
||||
<FileVersion>34.0.0.267</FileVersion>
|
||||
<AssemblyVersion>34.0.0.267</AssemblyVersion>
|
||||
<Version>34.0.0.267</Version>
|
||||
<Product>Clean Flash Player 34.0.0.317 Installer</Product>
|
||||
<AssemblyTitle>Clean Flash Player 34.0.0.317 Installer</AssemblyTitle>
|
||||
<FileVersion>34.0.0.317</FileVersion>
|
||||
<AssemblyVersion>34.0.0.317</AssemblyVersion>
|
||||
<Version>34.0.0.317</Version>
|
||||
<Authors>FlashPatch Team</Authors>
|
||||
<Company>FlashPatch Team</Company>
|
||||
<ApplicationIcon>icon.ico</ApplicationIcon>
|
||||
@@ -19,17 +19,6 @@
|
||||
<ItemGroup>
|
||||
<None Remove="cleanflash.7z" />
|
||||
</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>
|
||||
<Content Include="icon.ico" />
|
||||
</ItemGroup>
|
||||
@@ -52,7 +41,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<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>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
|
||||
@@ -8,11 +8,10 @@ using System.Windows.Forms;
|
||||
namespace CleanFlashInstaller {
|
||||
public partial class InstallForm : Form, IProgressForm {
|
||||
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:
|
||||
• Older Google Chrome ≤ 87
|
||||
• Older Mozilla Firefox ≤ 84 or Waterfox
|
||||
Don't forget, Flash Player is no longer compatible with new browsers.
|
||||
|
||||
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 = @"
|
||||
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) {
|
||||
completeLabel.Text = COMPLETE_INSTALL_TEXT;
|
||||
completeLabel.Links.Add(new LinkLabel.Link(212, 8));
|
||||
completeLabel.Links.Add(new LinkLabel.Link(260, 28));
|
||||
completeLabel.Links.Add(new LinkLabel.Link(187, 28));
|
||||
} else {
|
||||
completeLabel.Text = COMPLETE_UNINSTALL_TEXT;
|
||||
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) {
|
||||
if (e.Link.Start == 212) {
|
||||
Process.Start("https://classic.waterfox.net");
|
||||
} else {
|
||||
Process.Start("https://cleanflash.github.io");
|
||||
}
|
||||
Process.Start("https://gitlab.com/cleanflash/installer#clean-flash-player");
|
||||
}
|
||||
|
||||
private void copyErrorButton_Click(object sender, EventArgs e) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using CleanFlashCommon;
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
@@ -7,20 +8,29 @@ using System.Diagnostics;
|
||||
using SharpCompress.Archives.SevenZip;
|
||||
using SharpCompress.Common;
|
||||
using SharpCompress.Readers;
|
||||
using IWshRuntimeLibrary;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace CleanFlashInstaller {
|
||||
public class Installer {
|
||||
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));
|
||||
ExitedProcess process = ProcessUtils.RunProcess(
|
||||
new ProcessStartInfo {
|
||||
FileName = "regsvr32.exe",
|
||||
Arguments = "/s " + Path.GetFileName(filename),
|
||||
UseShellExecute = false,
|
||||
CreateNoWindow = true
|
||||
}
|
||||
);
|
||||
|
||||
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));
|
||||
}
|
||||
|
||||
info.Arguments = "/s " + relativeFilename;
|
||||
process = ProcessUtils.RunProcess(info);
|
||||
|
||||
if (!process.IsSuccessful) {
|
||||
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) {
|
||||
WshShell wsh = new WshShell();
|
||||
IWshShortcut shortcut = wsh.CreateShortcut(Path.Combine(folder, name + ".lnk")) as IWshShortcut;
|
||||
Type t = Type.GetTypeFromCLSID(new Guid("72C24DD5-D70A-438B-8A42-98424B88AFB8"));
|
||||
dynamic shell = Activator.CreateInstance(t);
|
||||
|
||||
shortcut.Arguments = "";
|
||||
shortcut.TargetPath = executable;
|
||||
shortcut.WindowStyle = (int) WshWindowStyle.WshNormalFocus;
|
||||
shortcut.Description = description;
|
||||
shortcut.WorkingDirectory = Path.GetDirectoryName(executable);
|
||||
shortcut.IconLocation = executable;
|
||||
shortcut.Save();
|
||||
try {
|
||||
var lnk = shell.CreateShortcut(Path.Combine(folder, name + ".lnk"));
|
||||
|
||||
try {
|
||||
lnk.TargetPath = executable;
|
||||
lnk.IconLocation = executable;
|
||||
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) {
|
||||
@@ -166,4 +184,4 @@ namespace CleanFlashInstaller {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -130,11 +130,11 @@
|
||||
|
||||
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\Clean Flash Player]
|
||||
"DisplayName"="Clean Flash Player ${VERSION}"
|
||||
"HelpLink"="https://cleanflash.github.io"
|
||||
"HelpLink"="https://gitlab.com/cleanflash/installer#clean-flash-player"
|
||||
"NoModify"=dword:00000001
|
||||
"NoRepair"=dword:00000001
|
||||
"URLInfoAbout"="https://cleanflash.github.io"
|
||||
"URLUpdateInfo"="https://cleanflash.github.io"
|
||||
"URLInfoAbout"="https://gitlab.com/cleanflash/installer#clean-flash-player"
|
||||
"URLUpdateInfo"="https://gitlab.com/cleanflash/installer#clean-flash-player"
|
||||
"VersionMajor"=dword:00000022
|
||||
"VersionMinor"=dword:00000000
|
||||
"Publisher"="CleanFlash Team"
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||
<ApplicationIcon>icon.ico</ApplicationIcon>
|
||||
<StartupObject></StartupObject>
|
||||
<Product>Clean Flash Player 34.0.0.267 Uninstaller</Product>
|
||||
<AssemblyTitle>Clean Flash Player 34.0.0.267 Uninstaller</AssemblyTitle>
|
||||
<FileVersion>34.0.0.267</FileVersion>
|
||||
<AssemblyVersion>34.0.0.267</AssemblyVersion>
|
||||
<Version>34.0.0.267</Version>
|
||||
<Product>Clean Flash Player 34.0.0.317 Uninstaller</Product>
|
||||
<AssemblyTitle>Clean Flash Player 34.0.0.317 Uninstaller</AssemblyTitle>
|
||||
<FileVersion>34.0.0.317</FileVersion>
|
||||
<AssemblyVersion>34.0.0.317</AssemblyVersion>
|
||||
<Version>34.0.0.317</Version>
|
||||
<Authors>FlashPatch Team</Authors>
|
||||
<Company>FlashPatch Team</Company>
|
||||
</PropertyGroup>
|
||||
@@ -35,7 +35,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<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>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
|
||||
@@ -114,11 +114,7 @@ namespace CleanFlashUninstaller {
|
||||
}
|
||||
|
||||
private void completeLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) {
|
||||
if (e.Link.Start == 212) {
|
||||
Process.Start("https://classic.waterfox.net");
|
||||
} else {
|
||||
Process.Start("https://cleanflash.github.io");
|
||||
}
|
||||
Process.Start("https://gitlab.com/cleanflash/installer#clean-flash-player");
|
||||
}
|
||||
|
||||
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.
|
||||
|
||||
<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
|
||||
|
||||
- Make sure you have a compatible browser to use Flash Player with
|
||||
- Download the latest version from [GitLab](https://gitlab.com/cleanflash/installer/-/releases)
|
||||
- Extract the installer and run it
|
||||
- Launch installer
|
||||
- Accept the disclaimer
|
||||
- Choose which browser plugins to install
|
||||
- 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
|
||||
- Press the "Install" button and wait for Flash Player to install
|
||||
- Enjoy using Flash Player!
|
||||
|
||||
Reference in New Issue
Block a user