dotnet distributed apps:
Hi there,
Recently I've posted a message here related to a weird error using the
ApplicationBlocks.Updater classes. In the meantime we've done some more
researching and testing. As reminder, here is the exception:
---
[DownloaderManager.CheckDownloadCompleteOrError] :
Error downloading files from the server for the application 'Isaris',
the following message was in the exception: 'Isaris'.
ERROR: Kan de opgegeven brontaal-ID niet vinden in het kopiebestand.
STACK: at
Microsoft.ApplicationBlocks.ApplicationUpdater.Downloaders.IBackgroundCopyError.GetErrorDescription(UInt32
LanguageId, String& pErrorDescription)
at
Microsoft.ApplicationBlocks.ApplicationUpdater.Downloaders.BITSDownloader.HandleDownloadErrorCancelJob(IBackgroundCopyJob
copyJob, String& errMessage)
at
Microsoft.ApplicationBlocks.ApplicationUpdater.Downloaders.BITSDownloader.Microsoft.ApplicationBlocks.ApplicationUpdater.Interfaces.IDownloader.GetJobStatus(Guid
jobId)
at
Microsoft.ApplicationBlocks.ApplicationUpdater.DownloaderManager.CheckDownloadCompleteOrError()
---
The line 'Kan de opgegeven brontaal-ID niet vinden in het kopiebestand' is
translated to English something like 'Cannot find the source language-ID in
the copy file'. Very weird error indeed.
The exception occurs after downloading the first file listed in the
manifest, or so it seems. The file in question has already been downloaded,
as I can see a file in the temp folder. When I rename that file, it is the
working executable.
The error only occurs in certain condition, elsewise it works /perfectly/.
These are the observartions we made:
1. The error only occurs when the client and server use a different Windows
version.
2. The error is not dependant on directory structure. With the same directoy
structure on the same language version, everything works ok.
From that we concluded that indeed the different language versions of the
client and server must have been the problem. The clients are all Dutch, the
servers are either Dutch (works) or English (fails).
I tried to add the following line to the updater:
Application.CurrentCulture = new CultureInfo("nl-NL"); // dutch
and also I've tried:
Application.CurrentCulture = new CultureInfo("en-US"); // dutch
Both did not solve the problem.
So: how does it come that BITS doesn't accept the downloaded file when it's
downloaded from a server that has a different language version of Windows
than the client?
Thanks,
Sijmen Mulder
PS: We tried using different Windows version. The error stays whether I use
2000/XP as clients or 2000/2003 as server.