When the native bit of DTF fires up the CLR it runs it's own class in the 
middle that has it's own try catch  session.Log() block.  If there was a 
bad image format exception this should have been caught in the MSI log.  I 
suspect he didn't get this far.

The first release or so of DTF had a current directory problem that broke 
the RunDLL() call.  We had DTF custom actions that would change the current 
directory  and when the sandbox got reused it would break.  This was fixed 
though.

Hard for me to say what the real problem was here without getting it in my 
lab and profiling it.  

----------------------------------------
 From: "Phil Wilson" <phildgwil...@gmail.com>
Sent: Thursday, October 31, 2013 3:57 PM
To: "General discussion about the WiX toolset." 
<wix-users@lists.sourceforge.net>
Subject: Re: [WiX-users] Custom action was working now it isn't.... 
HELP...

As a random guess based on the 1154 error, is it possible that there's 
some
C# code that is MSIL and so runs with the native bitness of the system,
but.... there's a dependency that is (say) 32-bit and the native code 
can't
call it? You'd expect BadImageFormatException somewhere if the chain is 
all
managed code, but assuming 1154 is correct then there's a Dll somewhere
that can't be loaded.  Something like this anyway....

Phil Wilson

On Thu, Oct 31, 2013 at 1:27 PM, Steven Ogilvie 
<steven.ogil...@titus.com>wrote:

> Wasn't a compile error, was a runtime error...
>
> Well it is working now, very strange was doing diffs between the custom
> action cs file and the product.wxs file and can't see what could have
> broken it, like I said it was working until a few days ago...
>
> Strange
>
> -----Original Message-----
> From: Christopher Painter [mailto:chr...@iswix.com]
> Sent: October-31-13 4:18 PM
> To: General discussion about the WiX toolset.; General discussion about
> the WiX toolset.
> Subject: Re: [WiX-users] Custom action was working now it isn't.... 
HELP...
>
> Hmmm... I'm guessing there was something else at play.  DTF can handle
> entry points up to 72 characters in length before it'll throw a compile
> error.
>
> ----------------------------------------
>  From: "Steven Ogilvie" <steven.ogil...@titus.com>
> Sent: Thursday, October 31, 2013 2:57 PM
> To: "General discussion about the WiX toolset."
> <wix-users@lists.sourceforge.net>
> Subject: Re: [WiX-users] Custom action was working now it isn't....
> HELP...
>
> So weird...
>
> Was working before, stopped working... function name had 26 characters
> removed 7 characters now it works...
>
> Go figure...
>
> Steve
>
> -----Original Message-----
> From: Hoover, Jacob [mailto:jacob.hoo...@greenheck.com]
> Sent: October-31-13 3:18 PM
> To: General discussion about the WiX toolset.
> Subject: Re: [WiX-users] Custom action was working now it isn't....
> HELP...
>
>
> 
http://stackoverflow.com/questions/3560370/custom-action-in-c-sharp-used-via

> -wix-fails-with-error-1154
>
> Chris has quite a few suggestions on what could cause that error.
>
> -----Original Message-----
> From: StevenOgilvie [mailto:sogil...@msn.com]
> Sent: Thursday, October 31, 2013 2:05 PM
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] Custom action was working now it isn't.... HELP...
>
> A different pair of eyes should help...
> I have a custom action that reads the registry and goes through the SQL
> Server Instances to get the last instance name (if there are more than
> one)... Was working like a charm, now for about a week it stopped 
working
> and I am getting this error:
>
> Action ended 14:57:56: CostFinalize. Return value 1.
> MSI (c) (A4:80) [14:57:56:213]: Doing action: 
CA_GetSQLServerInstanceName
> Action 14:57:56: CA_GetSQLServerInstanceName. CA: Getting SQL Server
> instance name...
> Action start 14:57:56: CA_GetSQLServerInstanceName.
> MSI (c) (A4:80) [14:57:56:240]: Creating MSIHANDLE (1) of type 790542 
for
> thread 7552 MSI (c) (A4:2C) [14:57:56:241]: Invoking remote custom 
action.
> DLL:
> C:\Users\STEVEN~1.OGI\AppData\Local\Temp\MSIF66D.tmp, Entrypoint:
> GetSQLExpressInstanceName
> MSI (c) (A4:A4) [14:57:56:242]: Cloaking enabled.
> MSI (c) (A4:A4) [14:57:56:242]: Attempting to enable all disabled
> privileges before calling Install on Server MSI (c) (A4:A4) 
[14:57:56:242]:
> Connected to service for CA interface.
> CustomAction CA_GetSQLServerInstanceName returned actual error code 1154
> but will be translated to success due to continue marking MSI (c) 
(A4:2C)
> [14:57:56:375]: Closing MSIHANDLE (1) of type 790542 for thread 7552
> Action ended 14:57:56: CA_GetSQLServerInstanceName. Return value 1.
>
> The custom action is straight forward:
> <CustomAction Id="CA_GetSQLServerInstanceName"
> BinaryKey="BIN_CustomAction"
> DllEntry="GetSQLExpressInstanceName" Impersonate="no" 
Execute="immediate"
> Return="ignore" />
>     <UI>
>       <ProgressText Action="CA_GetSQLServerInstanceName">CA: Getting SQL
> Server instance name...</ProgressText>
>     </UI>
>
> <InstallExecuteSequence>
>   <Custom Action="CA_GetSQLServerInstanceName"
> After="InstallInitialize">NOT Installed</Custom>
>
> <InstallUISequence>
>   <Custom Action="CA_GetSQLServerInstanceName"
> Before="MigrateFeatureStates">NOT Installed</Custom>
>
> Using a DTF custom action dll:
>
> /// <summary>
> /// Gets the SQL Server Express instance name for the SERVER_NAME ///
> </summary> /// Session session /// <returns>ActionResult 
Success</returns>
> [CustomAction] public static ActionResult 
GetSQLExpressInstanceName(Session
> session) {
>             try
>             {
>                 if (session == null)
>                 {
>                     throw new ArgumentNullException("session");
>                 }
>
>                 SetSessionProperty(session, "SQLSERVEREXPRESS_INSTANCE",
> string.Empty);
>
>                 const string Key = @"SOFTWARE\\Microsoft\\Microsoft SQL
> Server\\Instance Names\\SQL";
>                 var localMachine = RegistryKey.OpenBaseKey(
>                     RegistryHive.LocalMachine,
>                     Environment.Is64BitOperatingSystem ?
> RegistryView.Registry64 : RegistryView.Registry32);
>                 var regKey = localMachine.OpenSubKey(Key);
>                 if (regKey != null)
>                 {
>                     foreach (var valueName in regKey.GetValueNames())
>                     {
>                         if (!string.Equals(valueName, "MSSQLSERVER"))
>                         {
>                             var expressKey =
> @"SOFTWARE\\Microsoft\\Microsoft SQL Server\\" + valueName;
>                             var expressRegKey =
> localMachine.OpenSubKey(expressKey);
>                             if (expressRegKey != null)
>                             {
>                                 SetSessionProperty(session,
> "SQLSERVEREXPRESS_INSTANCE", "\\" + valueName);
>                             }
>                         }
>                     }
>                 }
>             }
>             catch (Exception ex)
>             {
>                 WriteErrorLogInstall(session, "GetSQLExpressInstanceName
> failed: ", ex, true);
>             }
>
>             return ActionResult.Success; }
>
> Any ideas why this isn't working?
>
> thanks,
>
> Steve
>
> --
> View this message in context:
>
> 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Custom-action-

> was-working-now-it-isn-t-HELP-tp7590194.html
> Sent from the wix-users mailing list archive at Nabble.com.
>
>
> 
----------------------------------------------------------------------------

> --
> Android is increasing in popularity, but the open development platform
> that developers love is also attractive to malware creators. Download 
this
> white paper to learn more about secure code signing practices that can 
help
> keep Android apps secure.
> 
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk


>
>
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> 
----------------------------------------------------------------------------

> --
> Android is increasing in popularity, but the open development platform
> that developers love is also attractive to malware creators. Download 
this
> white paper to learn more about secure code signing practices that can 
help
> keep Android apps secure.
> 
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk


>
>
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> 
----------------------------------------------------------------------------

> --
> Android is increasing in popularity, but the open development platform
> that developers love is also attractive to malware creators. Download 
this
> white paper to learn more about secure code signing practices that can 
help
> keep Android apps secure.
> 
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk


>
>
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> 
----------------------------------------------------------------------------
--
> Android is increasing in popularity, but the open development platform
> that developers love is also attractive to malware creators. Download 
this
> white paper to learn more about secure code signing practices that can 
help
> keep Android apps secure.
> 
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk


> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> 
----------------------------------------------------------------------------
--
> Android is increasing in popularity, but the open development platform 
that
> developers love is also attractive to malware creators. Download this 
white
> paper to learn more about secure code signing practices that can help 
keep
> Android apps secure.
> 
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk


> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
----------------------------------------------------------------------------
--
Android is increasing in popularity, but the open development platform 
that
developers love is also attractive to malware creators. Download this 
white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk


_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to