[wix-users] ConfigureSmbUninstall CA fails FR and ES The data area passed to a system call is too small.

Douglas, Keith (STATCAN) keith.douglas at canada.ca
Thu Jun 23 12:14:45 PDT 2016


I know nothing about SMB shares, or much at all about Win32 programming, but the documentation for StrCchCopy (dunno about the wide version) says that that an HRESULT of SAFE_E_INSUFFICIENT_BUFFER is not necessarily a failure. Could ExitOnFailure be overzealous in some way?



Keith Douglas

Programmer Analyst, Collection Systems Division
Statistics Canada / Government of Canada
Keith.Douglas at canada.ca / Tel : 613-854-5589

Programmeur analyste, Division des systèmes de collecte
Statistique Canada / Gouvernenment du Canada
Keith.Douglas at canada.ca / Tél :613-854-5589


-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Phill Hogland
Sent: June-23-16 2:31 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: [wix-users] ConfigureSmbUninstall CA fails FR and ES The data area passed to a system call is too small.

I am still trying to understand this issue and interested in any feedback.


While there does seem to be a problem with the limited size of the 'Description' field in the SCA_SMB struct in scasmb.h, which should probably be changed to:

WCHAR wzDescription[MAX_DARWIN_COLUMN + 1];


However, when a put a very short English string (even shorter than in the functional English MSI) and recompile the project, the French (or Spanish) MSI still hits the same error.


Début de l'action 14:52:00 : ConfigureSmbUninstall.
 ConfigureSmbUninstall:  Error 0x8007007a: Failed to copy description string to smb object
 ConfigureSmbUninstall:  Error 0x8007007a: failed to read FileShare table CustomAction ConfigureSmbUninstall returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)


The related code is:

         hr = WcaGetRecordFormattedString(hRec, ssqDescription, &pwzData);
         ExitOnFailure1(hr, "Failed to get Share Description for FileShare: '%ls'", pss->wzShareName);
         hr = ::StringCchCopyW(pss->wzDescription, countof(pss->wzDescription), pwzData);
         ExitOnFailure(hr, "Failed to copy description string to smb object");


I tried to create a Lux/Nit test framework to step into this immediate CA.  The project compiles however Nit exits with NIT8104

  Running test mutation scasched_x86_VS042
nit.exe : error NIT8104: Package failed: Fatal error during installation. [D:\Development\Git\wix3Dev\TestCaUnits\TestCaUnits.wixproj]
nit.exe : error NIT8102: 1 tests failed. 0 tests passed. [D:\Development\Git\wix3Dev\TestCaUnits\TestCaUnits.wixproj]
Done Building Project "D:\Development\Git\wix3Dev\TestCaUnits\TestCaUnits.wixproj" (Test target(s)) -- FAILED.

I have not been able to find any more information in logs or source code on NIT1804.

So I am still trying to find a way to get our bundle working on French and Spanish systems when using authoring like this:
       <Component Id="shareMyFolder" Directory="MYFOLDER">
         <RegistryValue Root="HKMU" Key="!(wix.PropertiesRegKey)" Name="shareMyFolder_Ver" Value="[ProductVersion]" Type="string" KeyPath="yes" />
         <util:FileShare Id="shareMyFolder" Name="MyFolder" Description="!(loc.MyFolder_Description)">
           <util:FileSharePermission GenericAll="yes" User="Everyone" />
         </util:FileShare>
       </Component>

Thanks for any suggestions!

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/



More information about the wix-users mailing list