From 264340057fe7b79509bc1a206583ea1ccab975c0 Mon Sep 17 00:00:00 2001 From: sr55 Date: Wed, 21 Apr 2010 19:22:58 +0000 Subject: WinGui: - Tag the Assembly Version with the svn revision so the GUI can be identified correctly. This is for the nightly builds. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3250 b64f7644-9d1e-0410-96f1-a4d463321fa5 --- win/C#/HandBrakeCS.csproj | 5 ++ win/C#/Installer/MakeNightly.nsi | 4 +- win/C#/Installer/MakeNightly.nsi.tmpl | 149 +++++++++++++++++++++++++++++++++ win/C#/Properties/AssemblyInfo.cs | 3 +- win/C#/Properties/AssemblyInfo.cs.tmpl | 42 ++++++++++ 5 files changed, 199 insertions(+), 4 deletions(-) create mode 100644 win/C#/Installer/MakeNightly.nsi.tmpl create mode 100644 win/C#/Properties/AssemblyInfo.cs.tmpl (limited to 'win') diff --git a/win/C#/HandBrakeCS.csproj b/win/C#/HandBrakeCS.csproj index 9990bc9e9..44b8113ab 100644 --- a/win/C#/HandBrakeCS.csproj +++ b/win/C#/HandBrakeCS.csproj @@ -359,6 +359,7 @@ True + @@ -504,4 +505,8 @@ makensis MakeNightly.nsi + + subwcrev.exe "$(ProjectDir)." "$(ProjectDir)Properties\AssemblyInfo.cs.tmpl" "$(ProjectDir)Properties\AssemblyInfo.cs" +subwcrev.exe "$(ProjectDir)." "$(ProjectDir)Installer\MakeNightly.nsi.tmpl" "$(ProjectDir)Installer\MakeNightly.nsi" + \ No newline at end of file diff --git a/win/C#/Installer/MakeNightly.nsi b/win/C#/Installer/MakeNightly.nsi index 8e8e38ce7..f1011a4df 100644 --- a/win/C#/Installer/MakeNightly.nsi +++ b/win/C#/Installer/MakeNightly.nsi @@ -8,8 +8,8 @@ ; HM NIS Edit Wizard helper defines !define PRODUCT_NAME "Handbrake" -!define PRODUCT_VERSION "Nightly SVN Snapshot" -!define PRODUCT_VERSION_NUMBER "Nightly" +!define PRODUCT_VERSION "3247 Nightly" +!define PRODUCT_VERSION_NUMBER "svn3247" !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" diff --git a/win/C#/Installer/MakeNightly.nsi.tmpl b/win/C#/Installer/MakeNightly.nsi.tmpl new file mode 100644 index 000000000..26f177d53 --- /dev/null +++ b/win/C#/Installer/MakeNightly.nsi.tmpl @@ -0,0 +1,149 @@ +/* Resources.Designer.cs $ + + This file is part of the HandBrake source code. + Homepage: . + 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 "$WCREV$ Nightly" +!define PRODUCT_VERSION_NUMBER "svn$WCREV$" +!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\Handbrake.exe" +!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" +!define PRODUCT_UNINST_ROOT_KEY "HKLM" + +SetCompressor lzma + +; MUI 1.67 compatible ------ +!include "MUI.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 + +; Check to see if .NET Framework 2.0 or above is Installed. +Function .onInit + Call GetDotNETVersion + Pop $0 + ${If} $0 == "not found" + MessageBox MB_OK|MB_ICONSTOP ".NET runtime library is not installed. $\r$\n You can download .Net Framework 2.0 redistributable from the microsoft website. $\r$\n Alternatively you can use google for a direct download URL" + Abort + ${EndIf} + + StrCpy $0 $0 "" 1 # skip "v" + + ${VersionCompare} $0 "2.0" $1 + ${If} $1 == 2 + MessageBox MB_OK|MB_ICONSTOP ".NET runtime library v2.0 or newer is required. You have $0. $\r$\n You can download .Net Framework 2.0 redistributable from the Microsoft website. $\r$\n Alternatively you can use google for a direct download URL" + Abort + ${EndIf} +FunctionEnd + +Function GetDotNETVersion + Push $0 + Push $1 + + System::Call "mscoree::GetCORVersion(w .r0, i ${NSIS_MAX_STRLEN}, *i) i .r1 ?u" + StrCmp $1 "error" 0 +2 + StrCpy $0 "not found" + + Pop $1 + Exch $0 +FunctionEnd + + +InstallDir "$PROGRAMFILES\Handbrake" +InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "" +ShowInstDetails show +ShowUnInstDetails show + +Section "Handbrake" SEC01 + SetOutPath "$INSTDIR" + SetOverwrite ifnewer + File "Handbrake.exe" + CreateDirectory "$SMPROGRAMS\Handbrake" + CreateShortCut "$SMPROGRAMS\Handbrake\Handbrake.lnk" "$INSTDIR\Handbrake.exe" + CreateShortCut "$DESKTOP\Handbrake.lnk" "$INSTDIR\Handbrake.exe" + File "Interop.QTOLibrary.dll" + File "Interop.QTOControlLib.dll" + File "AxInterop.QTOControlLib.dll" + File "Growl.Connector.dll" + File "Growl.CoreLibrary.dll" + File "Handbrake.exe.config" +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." +FunctionEnd + +Function un.onInit + MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" IDYES +2 + Abort +FunctionEnd + +Section Uninstall + Delete "$INSTDIR\uninst.exe" + + Delete "$INSTDIR\Interop.QTOLibrary.dll" + Delete "$INSTDIR\Interop.QTOControlLib.dll" + Delete "$INSTDIR\AxInterop.QTOControlLib.dll" + Delete "$INSTDIR\Handbrake.exe" + Delete "$INSTDIR\Handbrake.exe.config" + Delete "$INSTDIR\Growl.Connector.dll" + Delete "$INSTDIR\Growl.CoreLibrary.dll" + RMDir "$INSTDIR" + 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 \ No newline at end of file diff --git a/win/C#/Properties/AssemblyInfo.cs b/win/C#/Properties/AssemblyInfo.cs index 0068ddd25..85dbe5e50 100644 --- a/win/C#/Properties/AssemblyInfo.cs +++ b/win/C#/Properties/AssemblyInfo.cs @@ -38,6 +38,5 @@ using System.Runtime.InteropServices; // Revision // -[assembly: AssemblyVersion("0.9.4.4")] -[assembly: AssemblyFileVersion("0.9.4.4")] +[assembly: AssemblyVersion("0.9.4.3247")] [assembly: NeutralResourcesLanguage("")] \ No newline at end of file diff --git a/win/C#/Properties/AssemblyInfo.cs.tmpl b/win/C#/Properties/AssemblyInfo.cs.tmpl new file mode 100644 index 000000000..eab0c05a7 --- /dev/null +++ b/win/C#/Properties/AssemblyInfo.cs.tmpl @@ -0,0 +1,42 @@ +/* AssemblyInfo.cs $ + This file is part of the HandBrake source code. + Homepage: . + It may be used under the terms of the GNU General Public License. */ + +using System.Reflection; +using System.Resources; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. + +[assembly: AssemblyTitle("HandBrake")] +[assembly: AssemblyDescription("HandBrake is a GPL-licensed, multiplatform, multithreaded video transcoder.")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("HandBrake")] +[assembly: AssemblyProduct("HandBrake")] +[assembly: AssemblyCopyright("Copyright © 2010")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. + +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM + +[assembly: Guid("5e4e3f97-5252-41f6-aae9-3846f62cbc66")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// + +[assembly: AssemblyVersion("0.9.4.$WCREV$")] +[assembly: NeutralResourcesLanguage("")] \ No newline at end of file -- cgit v1.2.3