summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--win/CS/HandBrake.ApplicationServices/HandBrake.ApplicationServices.csproj15
-rw-r--r--win/CS/HandBrake.sln20
-rw-r--r--win/CS/HandBrakeWPF/App.xaml.cs11
-rw-r--r--win/CS/HandBrakeWPF/Constants.cs10
-rw-r--r--win/CS/HandBrakeWPF/HandBrakeWPF.csproj2
-rw-r--r--win/CS/HandBrakeWPF/Installer/Installer.nsi214
-rw-r--r--win/CS/HandBrakeWPF/Installer/MakeNightly.nsi214
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.Designer.cs18
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.resx6
-rw-r--r--win/CS/HandBrakeWPF/Services/UpdateService.cs10
-rw-r--r--win/CS/build.xml8
11 files changed, 38 insertions, 490 deletions
diff --git a/win/CS/HandBrake.ApplicationServices/HandBrake.ApplicationServices.csproj b/win/CS/HandBrake.ApplicationServices/HandBrake.ApplicationServices.csproj
index 657f6b7a2..56fc36d63 100644
--- a/win/CS/HandBrake.ApplicationServices/HandBrake.ApplicationServices.csproj
+++ b/win/CS/HandBrake.ApplicationServices/HandBrake.ApplicationServices.csproj
@@ -16,21 +16,6 @@
<TargetFrameworkProfile>
</TargetFrameworkProfile>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <OutputPath>bin\Debug\</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <Prefer32Bit>false</Prefer32Bit>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <OutputPath>bin\Release\</OutputPath>
- <Optimize>true</Optimize>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <DebugType>pdbonly</DebugType>
- <DebugSymbols>true</DebugSymbols>
- <Prefer32Bit>false</Prefer32Bit>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
<PlatformTarget>AnyCPU</PlatformTarget>
<OutputPath>bin\Debug\</OutputPath>
diff --git a/win/CS/HandBrake.sln b/win/CS/HandBrake.sln
index 0c3cc678f..b62d06cc4 100644
--- a/win/CS/HandBrake.sln
+++ b/win/CS/HandBrake.sln
@@ -19,43 +19,27 @@ EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
- Debug|x86 = Debug|x86
Release|x64 = Release|x64
- Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|x64.ActiveCfg = Debug|x64
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|x64.Build.0 = Debug|x64
- {087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|x86.ActiveCfg = Debug|x86
- {087A2BA8-BAC2-4577-A46F-07FF9D420016}.Debug|x86.Build.0 = Debug|x86
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|x64.ActiveCfg = Release|x64
{087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|x64.Build.0 = Release|x64
- {087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|x86.ActiveCfg = Release|x86
- {087A2BA8-BAC2-4577-A46F-07FF9D420016}.Release|x86.Build.0 = Release|x86
- {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|x64.ActiveCfg = Debug|x64
- {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|x64.Build.0 = Debug|x64
- {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|x86.ActiveCfg = Debug|x86
- {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|x86.Build.0 = Debug|x86
+ {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|x64.ActiveCfg = Debug|x86
+ {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Debug|x64.Build.0 = Debug|x86
{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Release|x64.ActiveCfg = Release|x64
{DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Release|x64.Build.0 = Release|x64
- {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Release|x86.ActiveCfg = Release|x86
- {DADE66CB-0E12-4959-ADE5-0ACD31D27C59}.Release|x86.Build.0 = Release|x86
{3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Debug|x64.ActiveCfg = Debug|Any CPU
{3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Debug|x64.Build.0 = Debug|Any CPU
- {3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Debug|x86.ActiveCfg = Debug|Any CPU
- {3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Debug|x86.Build.0 = Debug|Any CPU
{3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Release|x64.ActiveCfg = Release|Any CPU
{3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Release|x64.Build.0 = Release|Any CPU
- {3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Release|x86.ActiveCfg = Release|Any CPU
- {3BAEBAC7-9042-4863-876F-C550ADCA66DC}.Release|x86.Build.0 = Release|Any CPU
{6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Debug|x64.ActiveCfg = Debug|x64
{6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Debug|x64.Build.0 = Debug|x64
{6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Debug|x64.Deploy.0 = Debug|x64
- {6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Debug|x86.ActiveCfg = Debug|x64
{6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Release|x64.ActiveCfg = Release|x64
{6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Release|x64.Build.0 = Release|x64
{6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Release|x64.Deploy.0 = Release|x64
- {6E855245-E402-4C0F-BB0B-EEB63082F6AC}.Release|x86.ActiveCfg = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/win/CS/HandBrakeWPF/App.xaml.cs b/win/CS/HandBrakeWPF/App.xaml.cs
index 3d0952776..d9349e567 100644
--- a/win/CS/HandBrakeWPF/App.xaml.cs
+++ b/win/CS/HandBrakeWPF/App.xaml.cs
@@ -17,6 +17,8 @@ namespace HandBrakeWPF
using Caliburn.Micro;
+ using HandBrake.ApplicationServices.Utilities;
+
using HandBrakeWPF.Startup;
using HandBrakeWPF.Utilities;
using HandBrakeWPF.ViewModels;
@@ -53,7 +55,14 @@ namespace HandBrakeWPF
OperatingSystem os = Environment.OSVersion;
if (((os.Platform == PlatformID.Win32NT) && (os.Version.Major == 5)) || ((os.Platform == PlatformID.Win32NT) && (os.Version.Major == 6 && os.Version.Minor < 1)))
{
- MessageBox.Show("HandBrake requires Windows 7 or later to run. Version 0.9.9 (XP) and 0.10.5 (Vista) was the last version to support these versions.", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
+ MessageBox.Show(HandBrakeWPF.Properties.Resources.OsVersionWarning, HandBrakeWPF.Properties.Resources.Warning, MessageBoxButton.OK, MessageBoxImage.Warning);
+ Application.Current.Shutdown();
+ return;
+ }
+
+ if (!Environment.Is64BitOperatingSystem)
+ {
+ MessageBox.Show(HandBrakeWPF.Properties.Resources.OsBitnessWarning, HandBrakeWPF.Properties.Resources.Warning, MessageBoxButton.OK, MessageBoxImage.Warning);
Application.Current.Shutdown();
return;
}
diff --git a/win/CS/HandBrakeWPF/Constants.cs b/win/CS/HandBrakeWPF/Constants.cs
index 49e0183c5..37d0f923b 100644
--- a/win/CS/HandBrakeWPF/Constants.cs
+++ b/win/CS/HandBrakeWPF/Constants.cs
@@ -22,16 +22,6 @@ namespace HandBrakeWPF
/// <summary>
/// The appcast 32.
/// </summary>
- public const string Appcast32 = "https://handbrake.fr/appcast.i386.xml";
-
- /// <summary>
- /// The appcast 32.
- /// </summary>
- public const string AppcastUnstable32 = "https://handbrake.fr/appcast_unstable.i386.xml";
-
- /// <summary>
- /// The appcast 32.
- /// </summary>
public const string AppcastUnstable64 = "https://handbrake.fr/appcast_unstable.x86_64.xml";
/// <summary>
diff --git a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
index c366fe1c6..a414b50d5 100644
--- a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
+++ b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
@@ -498,9 +498,7 @@
</AdditionalFiles>
<None Include="app.config" />
<None Include="app.manifest" />
- <None Include="Installer\Installer.nsi" />
<None Include="Installer\Installer64.nsi" />
- <None Include="Installer\MakeNightly.nsi" />
<None Include="Installer\MakeNightly64.nsi" />
<AppDesigner Include="Properties\" />
<EmbeddedResource Include="public.key" />
diff --git a/win/CS/HandBrakeWPF/Installer/Installer.nsi b/win/CS/HandBrakeWPF/Installer/Installer.nsi
deleted file mode 100644
index fdc8ea9a1..000000000
--- a/win/CS/HandBrakeWPF/Installer/Installer.nsi
+++ /dev/null
@@ -1,214 +0,0 @@
-/* Resources.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://HandBrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-; Script generated by the HM NIS Edit Script Wizard.
-
-; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "HandBrake"
-!define PRODUCT_VERSION "1.1.0"
-!define PRODUCT_VERSION_NUMBER "1.1.0"
-!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_ROOT_KEY "HKLM"
-
-;Required .NET framework
-!define MIN_FRA_MAJOR "4"
-!define MIN_FRA_MINOR "6"
-!define MIN_FRA_BUILD "*"
-
-SetCompressor lzma
-
-; MUI 1.67 compatible ------
-!include "MUI.nsh"
-!include WinVer.nsh
-
-; MUI Settings
-!define MUI_ABORTWARNING
-!define MUI_ICON "HandBrakepineapple.ico"
-!define MUI_UNICON "HandBrakepineapple.ico"
-
-; Welcome page
-!insertmacro MUI_PAGE_WELCOME
-; License page
-!insertmacro MUI_PAGE_LICENSE "doc\COPYING"
-; Directory page
-!insertmacro MUI_PAGE_DIRECTORY
-; Instfiles page
-!insertmacro MUI_PAGE_INSTFILES
-; Finish page
-;!define MUI_FINISHPAGE_RUN "$INSTDIR\HandBrake.exe"
-!insertmacro MUI_PAGE_FINISH
-
-; Uninstaller pages
-!insertmacro MUI_UNPAGE_INSTFILES
-
-; Language files
-!insertmacro MUI_LANGUAGE "English"
-
-; MUI end ------
-
-Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
-OutFile "HandBrake-${PRODUCT_VERSION_NUMBER}-Win_GUI.exe"
-
-!include WordFunc.nsh
-!insertmacro VersionCompare
-!include LogicLib.nsh
-
-InstallDir "$PROGRAMFILES\HandBrake"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
-ShowInstDetails show
-ShowUnInstDetails show
-
-Var InstallDotNET
-
-Function .onInit
-
- ; For Silent Installs, Assume All Users
- IfSilent 0 +2
- SetShellVarContext all
-
- ; Begin Only allow one version
- System::Call 'kernel32::CreateMutexA(i 0, i 0, t "myMutex") i .r1 ?e'
- Pop $R0
-
- StrCmp $R0 0 +3
- MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK
- Abort
-
- ; Detect if the intsaller is running on Windows XP/Vista and abort if it is.
- ${IfNot} ${AtLeastWin7}
- MessageBox MB_OK "Windows 7 with Service Pack 1 or later is required in order to run HandBrake."
- Quit
- ${EndIf}
-
- ;Remove previous version
- ReadRegStr $R0 HKLM \
- "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}\" \
- "UninstallString"
- StrCmp $R0 "" done
-
- MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
- "${PRODUCT_NAME} is already installed. $\n$\nClick `OK` to remove the \
- previous version or `Cancel` to continue." /SD IDOK \
- IDOK uninst
- goto done
-
- ;Run the uninstaller
- uninst:
- IfSilent +3
- ExecWait $INSTDIR\uninst.exe
- goto done
- ExecWait '"$INSTDIR\uninst.exe" /S'
- done:
-FunctionEnd
-
-Section "HandBrake" SEC01
- SetOutPath "$INSTDIR"
- SetOverwrite ifnewer
-
- ; Begin Check .NET version
- StrCpy $InstallDotNET "No"
- Call CheckFramework
- StrCmp $0 "1" +3
- StrCpy $InstallDotNET "Yes"
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the Microsoft .NET Framework 4.6 Client Profile is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}." /SD IDOK
- Pop $0
-
- ; Get .NET if required
- ${If} $InstallDotNET == "Yes"
- SetDetailsView hide
- inetc::get /caption "Downloading Microsoft .NET Framework 4.6" /canceltext "Cancel" "https://www.microsoft.com/en-us/download/confirmation.aspx?id=49982" "$INSTDIR\dotnetfx.exe" /end
- Pop $1
-
- ${If} $1 != "OK"
- Delete "$INSTDIR\dotnetfx.exe"
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the Microsoft .NET 4.6 Framework"
- ${EndIf}
-
- ExecWait "$INSTDIR\dotnetfx.exe"
- Delete "$INSTDIR\dotnetfx.exe"
-
- SetDetailsView show
- ${EndIf}
-
- ; Install Files
- File "*.exe"
- CreateDirectory "$SMPROGRAMS\HandBrake"
- CreateShortCut "$SMPROGRAMS\HandBrake\HandBrake.lnk" "$INSTDIR\HandBrake.exe"
- CreateShortCut "$DESKTOP\HandBrake.lnk" "$INSTDIR\HandBrake.exe"
- File "*.dll"
- File "*.template"
- File "*.config"
- File "*.pdb"
-
- ; Copy the standard doc set into the doc folder
- SetOutPath "$INSTDIR\doc"
- SetOverwrite ifnewer
- File "doc\*.*"
-SectionEnd
-
-Section -AdditionalIcons
- CreateShortCut "$SMPROGRAMS\HandBrake\Uninstall.lnk" "$INSTDIR\uninst.exe"
-SectionEnd
-
-Section -Post
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\HandBrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\HandBrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
-SectionEnd
-
-
-Function un.onUninstSuccess
- HideWindow
- MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK
-FunctionEnd
-
-Function un.onInit
-
- ; For Silent Installs, Assume All Users
- IfSilent 0 +2
- SetShellVarContext all
-
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2
- Abort
-FunctionEnd
-
-Section Uninstall
- Delete "$INSTDIR\uninst.exe"
-
- Delete "$INSTDIR\*.*"
- Delete "$INSTDIR\doc\*.*"
- RMDir "$INSTDIR\doc"
- Delete "$SMPROGRAMS\HandBrake\Uninstall.lnk"
- Delete "$DESKTOP\HandBrake.lnk"
- Delete "$SMPROGRAMS\HandBrake\HandBrake.lnk"
- RMDir "$SMPROGRAMS\HandBrake"
- RMDir "$INSTDIR"
-
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true
-SectionEnd
-
-;Check for .NET framework
-Function CheckFrameWork
- ; Magic numbers from http://msdn.microsoft.com/en-us/library/ee942965.aspx
- ClearErrors
- ReadRegDWORD $0 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" "Release"
-
- IfErrors NotDetected
-
- ${If} $0 >= 393295
- StrCpy $0 "1"
- ${Else}
- NotDetected:
- StrCpy $0 "2"
- ${EndIf}
-
-FunctionEnd \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Installer/MakeNightly.nsi b/win/CS/HandBrakeWPF/Installer/MakeNightly.nsi
deleted file mode 100644
index 4d19fff81..000000000
--- a/win/CS/HandBrakeWPF/Installer/MakeNightly.nsi
+++ /dev/null
@@ -1,214 +0,0 @@
-/* Resources.Designer.cs $
-
- This file is part of the HandBrake source code.
- Homepage: <http://HandBrake.fr/>.
- It may be used under the terms of the GNU General Public License. */
-
-; Script generated by the HM NIS Edit Script Wizard.
-
-; HM NIS Edit Wizard helper defines
-!define PRODUCT_NAME "HandBrake Nightly"
-!define PRODUCT_VERSION "Nightly"
-!define PRODUCT_VERSION_NUMBER "Nightly"
-!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
-!define PRODUCT_UNINST_ROOT_KEY "HKLM"
-
-;Required .NET framework
-!define MIN_FRA_MAJOR "4"
-!define MIN_FRA_MINOR "6"
-!define MIN_FRA_BUILD "*"
-
-SetCompressor lzma
-
-; MUI 1.67 compatible ------
-!include "MUI.nsh"
-!include WinVer.nsh
-
-; MUI Settings
-!define MUI_ABORTWARNING
-!define MUI_ICON "HandBrakepineapple.ico"
-!define MUI_UNICON "HandBrakepineapple.ico"
-
-; Welcome page
-!insertmacro MUI_PAGE_WELCOME
-; License page
-!insertmacro MUI_PAGE_LICENSE "doc\COPYING"
-; Directory page
-!insertmacro MUI_PAGE_DIRECTORY
-; Instfiles page
-!insertmacro MUI_PAGE_INSTFILES
-; Finish page
-;!define MUI_FINISHPAGE_RUN "$INSTDIR\HandBrake.exe"
-!insertmacro MUI_PAGE_FINISH
-
-; Uninstaller pages
-!insertmacro MUI_UNPAGE_INSTFILES
-
-; Language files
-!insertmacro MUI_LANGUAGE "English"
-
-; MUI end ------
-
-Name "${PRODUCT_NAME}"
-OutFile "HandBrake-${PRODUCT_VERSION_NUMBER}_i686-Win_GUI.exe"
-
-!include WordFunc.nsh
-!insertmacro VersionCompare
-!include LogicLib.nsh
-
-InstallDir "$PROGRAMFILES\HandBrake Nightly"
-InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" ""
-ShowInstDetails show
-ShowUnInstDetails show
-
-Var InstallDotNET
-
-Function .onInit
-
- ; For Silent Installs, Assume All Users
- IfSilent 0 +2
- SetShellVarContext all
-
- ; Begin Only allow one version
- System::Call 'kernel32::CreateMutexA(i 0, i 0, t "myMutex") i .r1 ?e'
- Pop $R0
-
- StrCmp $R0 0 +3
- MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK
- Abort
-
- ; Detect if the intsaller is running on Windows XP/Vista and abort if it is.
- ${IfNot} ${AtLeastWin7}
- MessageBox MB_OK "Windows 7 with Service Pack 1 or later is required in order to run HandBrake."
- Quit
- ${EndIf}
-
- ;Remove previous version
- ReadRegStr $R0 HKLM \
- "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}\" \
- "UninstallString"
- StrCmp $R0 "" done
-
- MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION \
- "${PRODUCT_NAME} is already installed. $\n$\nClick `OK` to remove the \
- previous version or `Cancel` to continue." /SD IDOK \
- IDOK uninst
- goto done
-
- ;Run the uninstaller
- uninst:
- IfSilent +3
- ExecWait $INSTDIR\uninst.exe
- goto done
- ExecWait '"$INSTDIR\uninst.exe" /S'
- done:
-FunctionEnd
-
-Section "HandBrake" SEC01
- SetOutPath "$INSTDIR"
- SetOverwrite ifnewer
-
- ; Begin Check .NET version
- StrCpy $InstallDotNET "No"
- Call CheckFramework
- StrCmp $0 "1" +3
- StrCpy $InstallDotNET "Yes"
- MessageBox MB_OK|MB_ICONINFORMATION "${PRODUCT_NAME} requires that the Microsoft .NET Framework 4.6 Client Profile is installed. The latest .NET Framework will be downloaded and installed automatically during installation of ${PRODUCT_NAME}." /SD IDOK
- Pop $0
-
- ; Get .NET if required
- ${If} $InstallDotNET == "Yes"
- SetDetailsView hide
- inetc::get /caption "Downloading Microsoft .NET Framework 4.6" /canceltext "Cancel" "https://www.microsoft.com/en-us/download/confirmation.aspx?id=49982" "$INSTDIR\dotnetfx.exe" /end
- Pop $1
-
- ${If} $1 != "OK"
- Delete "$INSTDIR\dotnetfx.exe"
- Abort "Installation cancelled, ${PRODUCT_NAME} requires the Microsoft .NET 4.6 Framework"
- ${EndIf}
-
- ExecWait "$INSTDIR\dotnetfx.exe"
- Delete "$INSTDIR\dotnetfx.exe"
-
- SetDetailsView show
- ${EndIf}
-
- ; Install Files
- File "*.exe"
- CreateDirectory "$SMPROGRAMS\HandBrake Nightly"
- CreateShortCut "$SMPROGRAMS\HandBrake Nightly\HandBrake Nightly.lnk" "$INSTDIR\HandBrake.exe"
- CreateShortCut "$DESKTOP\HandBrake Nightly.lnk" "$INSTDIR\HandBrake.exe"
- File "*.dll"
- File "*.template"
- File "*.config"
- File "*.pdb"
-
- ; Copy the standard doc set into the doc folder
- SetOutPath "$INSTDIR\doc"
- SetOverwrite ifnewer
- File "doc\*.*"
-SectionEnd
-
-Section -AdditionalIcons
- CreateShortCut "$SMPROGRAMS\HandBrake Nightly\Uninstall.lnk" "$INSTDIR\uninst.exe"
-SectionEnd
-
-Section -Post
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\HandBrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\HandBrake.exe"
- WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
-SectionEnd
-
-
-Function un.onUninstSuccess
- HideWindow
- MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK
-FunctionEnd
-
-Function un.onInit
-
- ; For Silent Installs, Assume All Users
- IfSilent 0 +2
- SetShellVarContext all
-
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2
- Abort
-FunctionEnd
-
-Section Uninstall
- Delete "$INSTDIR\uninst.exe"
-
- Delete "$INSTDIR\*.*"
- Delete "$INSTDIR\doc\*.*"
- RMDir "$INSTDIR\doc"
- Delete "$SMPROGRAMS\HandBrake Nightly\Uninstall.lnk"
- Delete "$DESKTOP\HandBrake Nightly.lnk"
- Delete "$SMPROGRAMS\HandBrake Nightly\HandBrake Nightly.lnk"
- RMDir "$SMPROGRAMS\HandBrake Nightly"
- RMDir "$INSTDIR"
-
- DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
- DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true
-SectionEnd
-
-;Check for .NET framework
-Function CheckFrameWork
- ; Magic numbers from http://msdn.microsoft.com/en-us/library/ee942965.aspx
- ClearErrors
- ReadRegDWORD $0 HKLM "SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" "Release"
-
- IfErrors NotDetected
-
- ${If} $0 >= 393295
- StrCpy $0 "1"
- ${Else}
- NotDetected:
- StrCpy $0 "2"
- ${EndIf}
-
-FunctionEnd \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
index 4f350073b..adc43621c 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
+++ b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
@@ -1280,6 +1280,24 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to HandBrake requires a 64bit version of Windows 7 or later to run..
+ /// </summary>
+ public static string OsBitnessWarning {
+ get {
+ return ResourceManager.GetString("OsBitnessWarning", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to HandBrake requires Windows 7 or later to run. Version 0.9.9 (XP) and 0.10.5 (Vista) was the last version to support these versions..
+ /// </summary>
+ public static string OsVersionWarning {
+ get {
+ return ResourceManager.GetString("OsVersionWarning", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Overwrite?.
/// </summary>
public static string Overwrite {
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.resx b/win/CS/HandBrakeWPF/Properties/Resources.resx
index 7a995e0ab..830154c53 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.resx
+++ b/win/CS/HandBrakeWPF/Properties/Resources.resx
@@ -872,4 +872,10 @@ Time Remaining: {5}, Elapsed: {6:d\:hh\:mm\:ss}</value>
<data name="StaticPreviewView_Title" xml:space="preserve">
<value>Preview ({0}% actual size)</value>
</data>
+ <data name="OsBitnessWarning" xml:space="preserve">
+ <value>HandBrake requires a 64bit version of Windows 7 or later to run.</value>
+ </data>
+ <data name="OsVersionWarning" xml:space="preserve">
+ <value>HandBrake requires Windows 7 or later to run. Version 0.9.9 (XP) and 0.10.5 (Vista) was the last version to support these versions.</value>
+ </data>
</root> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Services/UpdateService.cs b/win/CS/HandBrakeWPF/Services/UpdateService.cs
index 0702b1909..b5213f05d 100644
--- a/win/CS/HandBrakeWPF/Services/UpdateService.cs
+++ b/win/CS/HandBrakeWPF/Services/UpdateService.cs
@@ -97,17 +97,11 @@ namespace HandBrakeWPF.Services
try
{
// Figure out which appcast we want to read.
- string url =
- VersionHelper.Is64Bit() || Environment.Is64BitOperatingSystem
- ? Constants.Appcast64
- : Constants.Appcast32;
+ string url = Constants.Appcast64;
if (VersionHelper.IsNightly())
{
- url =
- VersionHelper.Is64Bit() || Environment.Is64BitOperatingSystem
- ? Constants.AppcastUnstable64
- : Constants.AppcastUnstable32;
+ url = Constants.AppcastUnstable64;
}
var currentBuild = HandBrakeUtils.Build;
diff --git a/win/CS/build.xml b/win/CS/build.xml
index df3ef0ebe..e50b3ae38 100644
--- a/win/CS/build.xml
+++ b/win/CS/build.xml
@@ -58,25 +58,17 @@
<!-- Post Build Events -->
<Target Name="NightlyPostBuild">
- <Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\Installer\MakeNightly.nsi $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release /Y" Condition="$(Platform) == 'x86'" />
<Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\Installer\MakeNightly64.nsi $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release /Y" Condition="$(Platform) == 'x64'" />
- <Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\handbrakepineapple.ico $(MSBuildProjectDirectory)\HandBrakeWPF\bin\$(Platform)\Release /Y" Condition="$(Platform) == 'x86'" />
<Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\handbrakepineapple.ico $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release /Y" Condition="$(Platform) == 'x64'" />
- <Exec Command="xcopy $(MSBuildProjectDirectory)\doc $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release\doc /I /Y" Condition="$(Platform) == 'x86'" />
<Exec Command="xcopy $(MSBuildProjectDirectory)\doc $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release\doc /I /Y" Condition="$(Platform) == 'x64'" />
- <Exec Command="makensis $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release\MakeNightly.nsi" Condition="$(Platform) == 'x86'" />
<Exec Command="makensis $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release\MakeNightly64.nsi" Condition="$(Platform) == 'x64'" />
<Exec Command="&quot;$(SighToolLocation)&quot; sign /sha1 $(SignThumbprint) $(SignTimestamp) $(SignTimestampServer) /v &quot;$(MSBuildProjectDirectory)\HandBrakeWPF\bin\$(Platform)\Release\*Win_GUI.exe&quot;" Condition="'$(SignThumbprint)' != ''" />
</Target>
<Target Name="ReleasePostBuild">
- <Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\Installer\Installer.nsi $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release /Y" Condition="$(Platform) == 'x86'" />
<Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\Installer\Installer64.nsi $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release /Y" Condition="$(Platform) == 'x64'" />
- <Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\handbrakepineapple.ico $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release /Y" Condition="$(Platform) == 'x86'" />
<Exec Command="copy $(MSBuildProjectDirectory)\HandBrakeWPF\handbrakepineapple.ico $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release /Y" Condition="$(Platform) == 'x64'" />
- <Exec Command="xcopy $(MSBuildProjectDirectory)\doc $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release\doc /I /Y" Condition="$(Platform) == 'x86'" />
<Exec Command="xcopy $(MSBuildProjectDirectory)\doc $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release\doc /I /Y" Condition="$(Platform) == 'x64'" />
- <Exec Command="makensis $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x86\Release\Installer.nsi" Condition="$(Platform) == 'x86'" />
<Exec Command="makensis $(MSBuildProjectDirectory)\HandBrakeWPF\bin\x64\Release\Installer64.nsi" Condition="$(Platform) == 'x64'" />
<Exec Command="&quot;$(SighToolLocation)&quot; sign /sha1 $(SignThumbprint) $(SignTimestamp) $(SignTimestampServer) /v &quot;$(MSBuildProjectDirectory)\HandBrakeWPF\bin\$(Platform)\Release\*Win_GUI.exe&quot;" Condition="'$(SignThumbprint)' != ''" />
</Target>