BugFix: If dropped onto a project with no version info, a useful message is displayed

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5724 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
gbamber
2017-01-29 09:45:53 +00:00
parent d7b934b375
commit d3dfc8e221
5 changed files with 42 additions and 8 deletions

View File

@ -149,10 +149,18 @@ msgstr "Cancelled. You can download the new version later."
msgid "Download failed. (HTTP Errorcode %d) Try again later"
msgstr "Download failed. (HTTP Errorcode %d) Try again later"
#: ulazautoupdate.rsnobuildinfor
msgid "No build information available"
msgstr ""
#: ulazautoupdate.rsonlywindowsu
msgid "Only Windows users whith Administrator status can update this application.%sPlease log off, then log on as an administrator (or switch users to an administrator account),%sthen try again. This restriction is for the safety and security of your Windows system.%sClick OK to continue"
msgstr "Only Windows users whith Administrator status can update this application.%sPlease log off, then log on as an administrator (or switch users to an administrator account),%sthen try again. This restriction is for the safety and security of your Windows system.%sClick OK to continue"
#: ulazautoupdate.rssimportantme
msgid "%sImportant message from LazAutoUpdate component:%sThere is no version information in your project!%sClick [Continue], and/or [Abort] to quit, and use%sIDE menu item Project/Project Options/Version Info%sto add Version Info by clicking the checkbox."
msgstr ""
#: ulazautoupdate.rsthisapplicat
msgid "This application is up-to-date"
msgstr "This application is up-to-date"

View File

@ -149,10 +149,18 @@ msgstr "Cancelado. Puede descargar la nueva versión más tarde."
msgid "Download failed. (HTTP Errorcode %d) Try again later"
msgstr "No se pudo descargar. (Código de HTTP error %d) Inténtalo más tarde"
#: ulazautoupdate.rsnobuildinfor
msgid "No build information available"
msgstr ""
#: ulazautoupdate.rsonlywindowsu
msgid "Only Windows users whith Administrator status can update this application.%sPlease log off, then log on as an administrator (or switch users to an administrator account),%sthen try again. This restriction is for the safety and security of your Windows system.%sClick OK to continue"
msgstr "Solamente poco con Windows los usuarios estado de administrador puede actualizar este registro application.%sPlease apagado, luego inicie sesión en como administrador (o interruptor de usuarios a una cuenta de administrador), %sthen intentarlo de nuevo. Esta restricción es para la seguridad y la seguridad de tu Windows system.%sClick aceptar para continuar"
#: ulazautoupdate.rssimportantme
msgid "%sImportant message from LazAutoUpdate component:%sThere is no version information in your project!%sClick [Continue], and/or [Abort] to quit, and use%sIDE menu item Project/Project Options/Version Info%sto add Version Info by clicking the checkbox."
msgstr ""
#: ulazautoupdate.rsthisapplicat
msgid "This application is up-to-date"
msgstr "Esta aplicación es actualizada"

View File

@ -139,10 +139,18 @@ msgstr ""
msgid "Download failed. (HTTP Errorcode %d) Try again later"
msgstr ""
#: ulazautoupdate.rsnobuildinfor
msgid "No build information available"
msgstr ""
#: ulazautoupdate.rsonlywindowsu
msgid "Only Windows users whith Administrator status can update this application.%sPlease log off, then log on as an administrator (or switch users to an administrator account),%sthen try again. This restriction is for the safety and security of your Windows system.%sClick OK to continue"
msgstr ""
#: ulazautoupdate.rssimportantme
msgid "%sImportant message from LazAutoUpdate component:%sThere is no version information in your project!%sClick [Continue], and/or [Abort] to quit, and use%sIDE menu item Project/Project Options/Version Info%sto add Version Info by clicking the checkbox."
msgstr ""
#: ulazautoupdate.rsthisapplicat
msgid "This application is up-to-date"
msgstr ""

View File

@ -140,8 +140,10 @@ const
V0.3.2: Bugfix for DoSilentUpdate
V0.3.3: Added event OnUpdate
V0.3.4: Added unit ushortcut (CreateDesktopShortCut) for installers
V0.3.5: Rule #3:There is to be NO v0.3.5.0
V0.3.6: Bugfixed CreateShortCut code
}
C_TLazAutoUpdateComponentVersion = '0.3.4.0';
C_TLazAutoUpdateComponentVersion = '0.3.6.0';
C_TThreadedDownloadComponentVersion = '0.0.3.0';
{
V0.0.1: Initial alpha
@ -227,6 +229,11 @@ resourcestring
'restriction is for the safety and security of your Windows system.%' +
'sClick OK to continue';
rsApplicationU = 'Application update';
rsSImportantMe = '%sImportant message from LazAutoUpdate component:%sThere '
+'is no version information in your project!%sClick [Continue], and/or ['
+'Abort] to quit, and use%sIDE menu item Project/Project Options/Version '
+'Info%sto add Version Info by clicking the checkbox.';
rsNoBuildInfor = 'No build information available';
type
@ -625,6 +632,7 @@ end;
procedure TShortCutClass.SetShortCutCategoryString(ACategory: TShortCutCategory);
{
FreeDesktop Valid Categories:
TShortCutCategory = (scAudioVideo,scAudio,scDevelopment,
scEducation,scGame,scGraphics,scNetwork,scOffice,scScience,scSettings,
scSystem,scUtility);
@ -737,7 +745,7 @@ begin
end;
end;
function IsWindowsAdminWinXP: boolean;
function IsWindowsAdminWinXP: boolean; // Currently unused
const
GENERIC_READ = $80000000;
GENERIC_WRITE = $40000000;
@ -797,7 +805,7 @@ begin
fParentApplication := Tapplication(AOwner.Owner);
fParentForm := TForm(AOwner);
// Set default
fApplicationVersionString := 'No build information available';
fApplicationVersionString := rsNoBuildInfor;
// Get Versioninfo
objFileVerInfo := TFileVersionInfo.Create(fParentApplication);
try
@ -808,16 +816,18 @@ begin
fileinfo.GetProgramVersion(fApplicationVersionQuad);
fileinfo.GetProgramVersion(fProgVersion);
except
// EResNotFound raised if no versioninfo in project
sz:=rsSImportantMe;
raise Exception.Createfmt(sz,[LineEnding,LineEnding,LineEnding,LineEnding,LineEnding]);
FreeAndNil(fThreadDownload);
FreeAndNil(fShortCutClass);
Application.Terminate;
// Eat other Exceptions?
On E: EResNotFound do
ShowMessage('There is no version information in your project!');
On E: Exception do
Application.Terminate;
end;
finally
objFileVerInfo.Free;
end;
if (fApplicationVersionString = 'No build information available') then
if (fApplicationVersionString = rsNoBuildInfor) then
fApplicationVersionString := '0.0.0.0';
fCopyTree := True; // User can change