Re: [WiX-users] How to reference a disk root from Directory table?

2009-03-02 Thread Adam Majer
Yan Sklyarenko wrote:
> Hello WiX community,
> 
> This is a pure MSI question. 
> I'd like to insert a row into the Directory table, which corresponds to
> the root of disk drive, for instance, D:\. But, neither "D:\", nor "D:"
> works in DefaultDir column...
> 
> Is this at all possible? If so, then how?
> 
> I need this because my application requires certain security rights to
> be set for all ancestors of the installation directory up to the disk
> drive root inclusive. And I wish to use SecureObjects for this,
> populating necessary information with a custom action.

That's probably not a good idea!

What about if the application is installed on a remote server? What
about if the D:\ is a mapping of a remote directory? What about if the
installation directory is a mount point of a different drive so "parent"
drive is not installation drive?

I have no problems with applications setting special permissions for
their own directory. It is not uncommon for something like a database
service. But you generally do not want to ever change permissions of
parent paths from the installation directory.

I would argue the application needs revision because as-is, it's broken.

- Adam

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Merge module question

2008-07-17 Thread Adam Majer
Anidil wrote:
> Can't we author all the setup components inside an msm?Do we really need wix
> then?What all are the advantages of going for wix instead of deploying an
> application using merge modules?

By extension, we do not need tools like WiX as we don't need tools like
compilers. We can all hack binary codes directly to the processor and be
done with it.

BTW, .msm is like a .o to a .c

-
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Installing .NET 3.5 redist?

2008-05-18 Thread Adam Majer
Christopher Painter wrote:
> The WiX `philosophy` seems to be  don't add .NET dependencies to your
> install and don't redist the framework.Just do an AppSearch/Launch
> Condition and tell the user to go do it on their own. Personally
> this conflicts with my needs and results in one of the many reasons why
> I can't use WiX even though I'd like to.

The limitation is with Windows Installer, *not* WiX. The correct way of
doing this is either,

  1. a bootstrapper that will check for MSI and install it if needed, or
  2. just ship your MSI with the requirement condition and let the
destination deal with installing .NET 3.5.

For corporate deployments, #2 is probably best while option #1 is better
for the home user.

MSI is just a single-transaction-at-a-time installer. It is not like
Debian's APT that can install dozens if not more dependencies for you at
the same time as it installs or upgrades hundreds of other applications.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Starting & stopping program during install & uninstall

2008-05-18 Thread Adam Majer
Chris Mumford wrote:
> During install I need to start a program that I've just installed, and I
> also need to kill it during uninstall/upgrade.
>  
> I believe that I can just add a custom action to start it, but what
> about to stop it? Is there a non CA solution to this problem?

Wouldn't such a program be then called a "service"? And if yes, then
couldn't you just use the service tables for that?

Finally, your scenario will not work if your program has any
dependencies installed by the MSI, like the C library for example. These
are not available until *after* MSI has completed (after custom actions
executed). Though XCopy install type would work.

- Adam

-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DigitalCertificate Element

2008-05-18 Thread Adam Majer
Albert Shamsiyan wrote:
> Wix help regarding DigitalCertificate Element, states that the
> SourceFile is The path to the certificate file. Is it possible to
> extract it from already signed file? If so how? Can I just use a signed
> file or I must use the certificate file?

Err, no. Digital certificates do not work that way. Unless MSI works in
some non-standard way, in a signed message you have,

1. digital signature element - this is kind of like a hash of the MSI
unique to the certificate. The certificate ID is generally in the
signature. BUT, you need to locate the certificate. Since certificates
for MSI files are not exactly public info, you need,

2. digital certificate element - the *public* part of the certificate.
You can use this to verify that the signature is correct.


You will also have a *private* part of the certificate that is used to
generate the digital certificate in the first place. If this part is
even disclosed or even not 100% secured, the signature cannot be trusted
and certificate must be revoked.

Finally, each digital *public* part of the certificate is signed by a
trusted 3rd party, be it your company or another public source.


I hope this overview clarifies the confusion for people that never deal
with certificates or know how this stuff works. A signature is not the
public part of certificate which is not a private part of certificate
(never disclose the private part to ANYONE you do not implicitly trust).

- Adam

-
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] InstallExecuteSequence for Sql Actions

2008-01-31 Thread Adam Majer
Chris Eldredge wrote:
> I'm trying to create an MSI that installs a .NET assembly and registers 
> it for use in SQL Server 2005.
> 
> The problem is that the SQL I'm executing inside a SqlString is telling 
> SQL Server to load the assembly, but when I install the MSI it seems 
> that the assembly hasn't been copied to its final destination when the 
> SQL action executes.
> 
> My question: is it possible to change the order that the actions execute 
> in such that the assembly will be where it is supposed to be by the time
> the SQL commands start executing?

No. GAC is updated after MSI install is finalized. Wix has no control
over this.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Leaving a file on uninstall

2008-01-30 Thread Adam Majer
Karthik Krishnan wrote:
> You can set the File's parent Component's "Permanent" attribute to
> "yes", which I think accomplishes what you are trying to do.

This generally should only apply to system files.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Leaving a file on uninstall

2008-01-30 Thread Adam Majer
RW wrote:
> 
> 
> As it changes and will contain important data, I don't want the uninstaller
> to actually remove it.

Generally, this is not the correct way of doing things. The idea is to,

 1. install MyConfig.XML with default data in program directory
 2. your application opens MyConfig.XML in Application Data folder
unique to each user, OR
 3. if #2 not available, opens MyConfig.XML data in Application Data
folder for All Users, OR
 4. if #3 not avaiable, open the default settings from installation
directory.

Steps 2-4 apply per settings file or per setting, your choice.

Then to save the settings, it should write,

 1. to user's Application Data folder
 2. to All User's Application Data folder if it has write permissions
for that location.

This way your application is not only correctly installed, it will work
in cases where system administrator may have reconfigured your
application for your computer or site install.

- Adam

-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Service is not started in Vista, working fine in xp

2008-01-29 Thread Adam Majer
SaiTeja wrote:
> Continuation for the previous mail.
> 
> When I start service manually from services.msc, I got error message as
> "Windows Couldnot start Service on Local Computer - Error 1067: The process
> terminated unexpectedly"

Try to run it directly from installation location. What error do you get
then?

The service control errors are not exactly that helpful. You have to
look for the errors from your service not the service control.

- Adam

-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Unzip a .zip file in MSI

2008-01-28 Thread Adam Majer
Richard wrote:
> There are times when I think the "unzip files" approach is legitimate.
> 
> For instance, suppose you have a bunch of data files that represent a
> snapshot in time for a dynamically updating service.

Install the initial snapshot as a zip file. The service or custom action
will then unpack these files into a *temporary location* (ie. NOT under
Program Files). The zip file is tracked and removed. Dumping stuff into
Program Files is not the right thing to do.

Furthermore, since in your scenario the service will fetch updates from
a network resource, why not just have it fetch the initial snapshot in
the first place? If it is too big, then it is still valid to store the
zip file instead of unpacking it. If the customer wants to completely
reset the service, they can just delete all dynamic data in a database,
and the service can then repopulate the database as if it were an
initial snapshot. No reinstall needed.

The *only* place to dump files is in a temporary directory or
application's data directory (it is NOT under Program Files). The
original post alluded towards dumping files in the installation directory.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Unzip a .zip file in MSI

2008-01-28 Thread Adam Majer
[EMAIL PROTECTED] wrote:
> It's a slightly unusual option, but if I was in your shoes I might
> consider supplying the application packaged as a wixlib (containing the
> main application installation), together with a utility which allows the
> reseller to select their "template" folder. After verifying that the

You are making it too complicated. Wix is a great toolkit as it allows
the generation of the installer files directly from the command line. To
me at least, the obvious solution to create *many* semi-customized MSI
files and to be sane is automation.

For example, create a small web application where resellers can add
their own logos, text options, etc. The web application then stores the
stuff in some database. You then write a script that takes the data from
the database and creates a file that will be included in the main wix
file. Then you run make. Put the resulting MSI in the database (or
reference in database) allowing each reseller to get their customized
MSI directly from you.

If they need changes like logo, they can just change it via the web app.

So, you still end up with 40 MSI builds, but it becomes automated.

I was going to write this is suitable for small and medium sized MSI
files, but I think it would work with DVD sized ones as well. Disk space
is cheap. CPU power is cheap.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Unzip a .zip file in MSI

2008-01-27 Thread Adam Majer
Xin Liu (Intl Vendor) wrote:
> In our msi there is a .zip file needed to be unzipped to target folder
> during installation. Does Wix directly support this kind of action?

Why? Isn't the MSI file like a zip file?

Anyway, your solution is really nasty. As far as I know, it will prevent
the content of the zip file from being tracked by Windows Installer.
Removing the installation will leave rogue files behind.

Just specify the content of the zip file in the source schema as one of
the components that is to be installed. The result will be the same as
with zipfile, but at least the files will be tracked inherently by the
installer.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Custom actions working fine in xp - failing in Vista

2008-01-23 Thread Adam Majer
SaiTeja wrote:
> I have created a WIX installer that works perfectly on XP.
> 
> But When I try in Vista Business, my custom actions are failing
> 
> Below is the custom action
> 
>  ExeCommand="UninstallLogonHandler" FileKey="xyz.exe">
> 

Let me quess, the xyz.exe depends on the C runtime? And you are
installing the C runtime in the installer via merge module?

If yes, that is the problem. In Vista the runtime will NOT be accessible
to xyz.exe until *after* the installer completes installation. The only
way to correct this is to either link statically, or distribute the
runtime just as you would in the "copy method". Clearly, the preferred
way is to use the merge module and just statically link the custom action.

Pre-Vista OSes acted differently with respect to SxS DLLs hence your
action worked.

- Adam


-- 
Mail Etiquette
==
* Quote properly or not at all. Top posters, this applies to you!
* When replying to posts on mailing lists, only address the mailing list
  unless poster explicitly requested you include them in CC

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Service Control & Install

2008-01-11 Thread Adam Majer
SaiTeja wrote:

>   ((NOT VersionNT=500) AND (VersionNT64))   

This is just a side note, but you should almost never use something like
(NOT Version=500). Maybe you are looking for something like
(VersionNT>500)? If you do not want to use CDATA section, you probably
can just type (VersionNT > 500 )

The reason for this is what will happen if someone wants to install this
on NT 4 for some reason?

Cheers,
Adam

-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Help on Service

2008-01-11 Thread Adam Majer
Anidil wrote:
> 
> I see that the service.exe has been copied and registered under windows
> service console.but it doesn't start automatically.I get the following
> message when tried starting manually."Windows could not start the service on
> Local Computer. Error 1053: The service did not respond to the start or
> control request in a timely fashion."

I don't know if this is the same problem as in my case, but if your
service uses some runtime that is also installed by the MSI (eg. C
runtime), it CANNOT be started until MSI finalizes installation. The C
runtime will not be available and will fail to start.

This is assuming you are installing on Vista.

- Adam

-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Re Post: Msi Logging

2007-12-17 Thread Adam Majer
SaiTeja wrote:
> Hi,
> 
> Thanks for Info.
> 
> Can you suggest for Msi Logging for XP or 2000
> 
>>> -> 
>>> ->  C:\Install.txt

I'm not using this, but my suggestion would be to,

 1. DO NOT use C:\ for cruft like log files. Put them in User's
Directory like User's Application Data similar. Or temporary folder.

 2. For logging on XP or 2000 you need to use a command line switch /log
with msiexec to get logging.

  msiexec /log install_logfile.txt install.msi

You can do that with a batch file or from command line.


- Adam


-
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] May I have your attention, please :D

2007-12-10 Thread Adam Majer
Szentpali Janos wrote:
> I am glad to see I am not alone out there :). Sadly nobody else seems to
> care :(.

I would prefer that people actually replied in text only while also
removing unnecessary cruft from the quoted bits before replying. What is
the point of replying at bottom of email if one has to continuously
scroll down to see the response?

Anyway, I gave up that most people actually have any email etiquette
these days. It makes it harder to actually read all of the information
in email (eg. from archive)

A more troubling trend is emerging in email. People are too lazy to
actually create a new message these days. Instead they just reply to a
completely unrelated one just because it contains the necessary From:
data. This breaks threading and makes searching mailing list archives a
chore to say the least. But I guess 2 clicks are so much more trouble
than one click and put your new mail at top without even bothering to
remove the old cruft.

If this continues to degenerate, email may stop to be an effective way
to communicate.

- Adam


-
SF.Net email is sponsored by: 
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Calling embedded binaries with dependencies in WIX

2007-11-26 Thread Adam Majer
Jose Sanchez Saldana (Excell Data Corporation) wrote:
> I’m attempting to call sed.exe as an embedded binary from an MSI –
> however, it has three dependencies: cygiconv2.dll, cygintl2.dll, and
> cygwin1.dll. Does wix have any mechanism, through custom actions, that
> would allow sed.exe to be called from within the MSI - through the
>  tag – without having to actually install the various
> dependencies? Thanks.

No. From my experience, I would only recommend static binaries for
custom actions (ie. do not rely on C runtime either).


Just as a side note, cygwin and sed (what you seem to be using) are both
licensed under GPL license hence you are required to provide source code
access to all customers using the software (installer is also software),
including any modifications. Furthermore, the installer would need to be
rebuildable with the modified sed files (if customers wants to do that
for whatever reason) so source code/object code of the wix would need to
be provided as well.

If you are using this for excel installation or something like that, I
would urge you not to use GPLed code or binaries - they are *not*
freeware. Instead, please use BSD licensed software or similar software
that may be considered "freeware" for binary only distributions. I think
there are BSD implementations of sed (though less feature packed than
GNU GPL version)

- Adam

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Windows XP is Installed - Launch condition

2007-11-26 Thread Adam Majer
Adrian Alonso wrote:
> Hi! I need to add a launch condition to my product installer to
> determine if the OS is Windows XP. My product can be only installed on
> WinXP. Do you know which registry entry should I take or if I should use
> another kind of launch condition? What I'm looking for is an "Official
> answer from MS" or "The correct way to achieve this" (to avoid testing

See VersionNT property value.

http://msdn2.microsoft.com/en-us/library/aa372495.aspx

- Adam

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Setting a shortcut workingdirectory in Vista

2007-11-21 Thread Adam Majer
robert marshall wrote:
> When creating shortcuts for our wix installer we've previously set the
> Workingdirectory for the shortcut to be the root directory for the app
> in C:/Program Files. Vista complains about users saving stuff there -
> which happens when they do a save as and don't change the location, and


Fix it in application not installer. What happens if the user starts the
application directly from the install directory? Or makes their own
shortcut there?

If you want to be really correct, the correct place to save user
documents is in their documents folder.

- Adam

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Service Control and Service Install

2007-11-19 Thread Adam Majer
SaiTeja wrote:
> Hi,
> 
> Can any review the wix code for the following and give example for last one
> 
> Description="This will install only on Windows XP or later" 
> 
> NOT VersionNT = 500  

Err, this is NOT VersionNT = 500 which means it will not install only on
one version of Windows. What you are looking for is probably

  VesionNT > 500

But since this is XML and it doesn't like > and <, you can escape it as

  VersionNT > 500

or maybe

  



Alternatively, you may want to use

  VersionNT >= 501

so it is self explanatory.

- Adam

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Services + Vista + GAC

2007-11-14 Thread Adam Majer
Richard wrote:
> In article <[EMAIL PROTECTED]>,
>     Adam Majer <[EMAIL PROTECTED]>  writes:
> 
>> Regarding the service now, I think the problem has a lot to do with the
>> installation of stuff into the GAC (the recommended way of doing things
>> after all). All that the service needs is the C runtime, nothing special
>> here. But that is not available.
> 
> As Phil mentioned, an easy solution to this is to link to the C
> runtime staticly and then *poof*, the problem goes away.

Actually, that is not the 'easy' solution!

There are other dependencies (not assembies, just regular DLLs) and
those would have to reconfigurured and rebuilt.

> ServiceControl does more than *start* services.  Plenty of times you
> need to stop services before you upgrade or install things, otherwise
> the service process keeps it loaded in memory and you can't update it
> without rebooting.  IIS can hold onto your vdir, for instance.  For
> your own services, you need to stop them before you can update them.
> I've used ServiceControl to start services I've installed plenty of
> times, but in this particular case (changes you need aren't done until
> InstallFinalize or later), it isn't working, so I was saying why not
> investigate if you can live without starting the service after you've
> installed it.  Its a workaround.

I know this. My question was why have the start attribute of the
ServiceControl tag? Maybe a good feature for future release of WiX may
be a delayed start of services. That is, the service is started after
installation finalizes?

- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Services + Vista + GAC

2007-11-14 Thread Adam Majer
Richard wrote:
> The problem isn't anything to do with Vista, its because your service
> has a dependency on something in the GAC and the files don't really
> appear in the GAC until after the Commit phase of the install.
> 
> Just mark your service as starting automaticly and you shouldn't have
> any problem.  Then Windows will start the service when its needed.
> Why do you think that you must start your service before the install
> finishes?

First a general comment - thanks for all the replies!

Regarding the service now, I think the problem has a lot to do with the
installation of stuff into the GAC (the recommended way of doing things
after all). All that the service needs is the C runtime, nothing special
here. But that is not available.

Now, wix has



so, why have that? Coincidently, it works on *every* release of windows,
but not Vista because of Vista's new way of handing assemblies.
Therefore the bug is either in WiX, Windows Installer or Vista. By my
understanding of how things work, GAC
refresh/update/install/committing/whatever you want to call it, should
just be an API call within Windows Installer so the installation
sequence can be,


.. install stuff (including to GAC)
.. refresh GAC -- maybe this could be a custom step that doesn't run
unless needed, like when starting services before installation is done.
.. start services.

Then if start services fails, you roll back by uninstalling the stuff
from the GAC, (refreshing it again, if you have done it before) and
rolling back the rest of the installation.


Finally, the application here is installed as a service because it is
not a user intractable application and it is the easiest way of doing
things. But yes, there may be another way of running it... messy, but
possible. But for general case, does windows have triggers that allow a
service to be started automatically when someone tried to connect to UDP
port 123 (example) or a named pipe? If yes, then I guess
ServiceControl's start attribute can be removed?

- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Services + Vista + GAC

2007-11-13 Thread Adam Majer
Hi,

I have a service I want to install and automatically start with an
installer. Now, the runtime for the service is not available until after
installer completed because the runtime goes into the GAC (it is just
the VS2005 SP1 C runtime).

One solution is to deploy the files locally (as in a per-user install),
but that doesn't work because the service uses a plugin that is in a
subdirectory of the installation. The location of the plugin is not easy
to change.

Another solution that was suggested here was to use a deferred custom
action to start the service. But that also doesn't seem to work. Using
WiX 2.x branch and it results in a runtime error. The custom action
works OK if run outside of the MSI. The error returned is

  "Unable to schedule operation. The action must be scheduled between
InstallInitialize and InstallFinalize."

Currently I have it as,






  


Any ideas?

This problem will definitely keep surfacing regarding Vista and
services. Is there something being done either in the Windows Installer
or WiX to address this issue and allow services to start after GAC is
updated? Or update the GAC, start services then commit installation?? Or
is there a way to force GAC refresh (or whatever it is called) as an
installation sequence?

The current situation is a giant PITA.

- Adam

PS. I guess an alternative would be not to start the service on Vista
and ask user either to start it manually or restart the machine. Not a
good improvement from XP or 2003!

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Cannot install VC80 Runtime from VS2005 SP1 on Vista and Vista only

2007-11-13 Thread Adam Majer
Wilson, Phil wrote:
> If you were in fact installing the base VS 2005 merge modules on Vista
> instead of the SP1 versions, this might be the Orca issue with dates -
> if you open a merge module with Orca it will unconditionally change the
> modify date. If you did that to the original VS 2005 merge modules then
> SP1 won't update them because that's the MSI update rule - they look
> like they've been modified.  You'd still have the base VS 2005 versions.

Sorry for the lateness of the reply, but I think you are correct. I
noticed recently that even if you just open the files with Orca, DO NOT
save anything or modify anything, the modification date on the files is
updated. This Orca bug is probably what caused the problem in the first
place.

- Adam


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] enabling a control with a radiobutton in the same dialog

2007-11-13 Thread Adam Majer
Richard wrote:
> In article <[EMAIL PROTECTED]>,
> Rob Hamflett <[EMAIL PROTECTED]>  writes:
> 
>>  
> 
> Do you really need this  business?

CDATA sections is not needed in XML. It is only used if you don't want
to escape special characters like > and/or want to preserve whitespace.
Regular XML does not preserve whitespace.

Of course, there is still the problem with ]] in your text! Though I'm
not sure many people use that.

- Adam


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Uninstall removing edited files

2007-11-01 Thread Adam Majer
Richard wrote:
> In article <[EMAIL PROTECTED]>,
> Craig0ss <[EMAIL PROTECTED]>  writes:
> 
>> Basically my installer installs certain standard letters for use with the
>> software, if i change the standard letter to incorperate client specific
>> details and then uninstall the product the modified file is removed, is
>> there a way to check if the file has been modified and do not delete it on
>> uninstall?
> 
> The way I've dealt with this was to run a custom action that copies
> the files to a backup before the upgrade install transaction begins,
> i.e. the CA was immediate and sequenced before InstallInitialize.
> 
> Its kinda hacky; I'd rather that Windows Installer not remove modified
> files during an upgrade, but I can see how that would be problematic
> to get right in all circumstances.

Huh? Hacky is allowing files to be modified in install locations. I'm
mostly from Linux distributions when it comes to this but,

  1. installer must never install in user modifiable folders for system
wide installs
  2. installer must not modify user settings - only system settings
(unless user install, of course).
  3. software must store modifications in user folders and in user
accessible locations (registry), unless it is some system software that
stores global changes, then it must not just overwrite the default,
install data.
  4. install locations should not be overwritten by user actions from
within the program no matter if installed as system or user.


There are other areas too, like not removing user configurations when
uninstalling software. Most Windows installation people would do users a
favour by following rules that are common in UNIX world.

I think Vista is starts to enforce this more than older versions of
Windows - finally Windows version that makes sense in terms of
user/system/install defaults.

- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] example Wix project

2007-10-29 Thread Adam Majer
hina1703 wrote:
> Hello Richard,
> 
> I am still trying to find out some information as subtle advantages of WIX
> over InstallShield & looking for a demo project. Do you have any other
> example project which you can share with me? 
> Also are there any power point slides or any info available?

The following reasons are my reason:

  * It is free
  * It is open-source so if there is a big problem that I need fixed NOW
I can invest the time/money to fix it
  * It is being used by Microsoft's largest products => well tested
  * It is just a bunch of command line tools => much nicer build process.

I'm not on the inside (of Microsoft) but from my understanding Microsoft
Office and Visual Studio are both using WiX for installers (someone
correct me if I'm wrong here!). If that is correct, those are good
"demos projects" I guess!

- Adam


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Installation order for Service Installs

2007-10-24 Thread Adam Majer
Wilson, Phil wrote:
> That's correct, Vista uses the same SxS model with Fusion to install the
> C++ runtimes as GAC installation, so the runtimes aren't available until
> after InstallFinalize. 

Solution:

  * Install merge module if (VersionNT < 600) OR Version9X  . In other
words, install the merge module on pre-Vista systems and the service
will use the merge module files.

  * On Vista and newer machines (VersionNT >= 600), install the runtime
as a local assembly in the destination folder of your service.


This makes the MSI file larger, but at least it works the Right Way.

- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] wixout file format

2007-10-24 Thread Adam Majer
Rob Mensching wrote:
> schema is all documented.  The command-lines and the tools to use are
> documented.”  I’m happy for people to say, “Hey, such-and-such isn’t
> documented… can I expect it to remain constant supported and all that
> good stuff?”  I’ll then go into the tools and see if it is a purposeful
> feature or a side-effect that might change in the future.  The former is
> something I should document.  The latter is something you should not use.

I'll bite on that and point you to light.exe command line options.

light.exe 3.0.2925.0

[snip]
  -xo  output xml instead of MSI format
[snip]

So either xml is not xml or -xo file format changed but documentation
has not.

Maybe it should say "output internal WiX format instead of MSI format".

Plain XML is still nicer regardless if it will result in something 1.35
times bigger (if binary part is base64 encoded). But then I don't really
have anything invested in -xo output format so it doesn't really matter
to me.

- Adam

PS. Another way would be to have a -xo for plain XML and -xb for the new
binary format.

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Installation order for Service Installs

2007-10-24 Thread Adam Majer
Richard wrote:
> In article <[EMAIL PROTECTED]>,
>     Adam Majer <[EMAIL PROTECTED]>  writes:
> 
>> How can I structure this such that the merge module is installed
>> completely prior to installing the component?
> 
> In addition to what Bob Arnson said, check your install execute
> sequence and look at the relative ordering of the standard actions
> that manipulate services and those that install the files.
> 
> The canonical sequence has the sequence of: stop services, install
> files, start services, so you should be OK.
> 
> How did you determine that your service didn't start because of
> missing runtime files?

Vista says that SxS (Visual C runtime 8.0 from VS 2005 SP1) is not
available. Starting a configuration utility that depends on the same SxS
indicated that there is a SxS installation error. If I do not attempt to
start the service in the installer, I can run the configuration utility
or the service after installation is complete.


While searching the archives, I came across a response by Rob Mensching
that appears to address the same problem.

"Usually, this means your service has some dependency that hasn’t been
completely installed by the time StartServices is called.  A favorite
way to hit this is to have a managed code service that depends on an
assembly that is being installed to the GAC.  Because assemblies aren’t
committed to the GAC until InstallFinalize, the assembly won’t be found
in the GAC until the install is complete."

Moving the StartService after InstallFinalize didn't work - got an error
that didn't even rollback :) Kind of expected.

I'll try to install as a local assembly in addition to the merge module
and see what happens.

- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Installation order for Service Installs

2007-10-24 Thread Adam Majer
Bob Arnson wrote:
> Adam Majer wrote:
>> How can I structure this such that the merge module is installed
>> completely prior to installing the component?
>>   
> 
> That's not how Windows Installer works: Merge modules lose their
> identity when merged, so they're just a bunch of components in the .msi.
> Then, each resource of each component is installed, via standard
> actions. (InstallFiles, for example, installs all the files in all
> components before WriteRegistryValues writes all the registry values for
> all components.)
> 
> If you need tighter control than that, you need to use separate packages
> and a chainer.
> 

Are you saying that it is impossible to install a service that depends
on a MSVC runtime and start it in the same installer? Surely, that can't
be true.

The installation keeps bombing that SxS install is not correct. Now, if
I do not attempt to start the service, installation completes and I can
start the service manually, through reboot or use a program that uses
the same runtime SxS. It is as though SxS is not installed until after
the installer is done making it unavailable to anything (including
custom actions) called by the installer.

The structure of the installer is very simple.


  

  

  
  

  
  



   
   



Therefore, to start services that need the SxS module installed by the
same MSI,
  * reboot like in old days to start,
  * start manually, or
  * ???

- Adam


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Installation order for Service Installs

2007-10-23 Thread Adam Majer
Hi all,

I want to install a service, but the service needs a runtime installed
first to be able to run. More importantly, the C runtime.

My current setup is,


  
  


This results in the component installed prior to the runtime or at least
the runtime being unavailable before the component is installed and an
attempt to start the service is executed.

How can I structure this such that the merge module is installed
completely prior to installing the component?

Thanks,
- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] wixout file format

2007-10-23 Thread Adam Majer
Peter Marcu wrote:
> The wixout is not a pure xml file in WiX 3.0. It has a cab at the
> beginning of it that contains embedded binary files.

Wouldn't it be possible to fix this such that it is a proper XML file?
The cab could be embedded in the XML (eg. base64) and the entire thing
would be much better, though not exactly perfect. At least it would work
with XML parsers.

- Adam

-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Cannot install VC80 Runtime from VS2005 SP1 on Vista and Vista only

2007-10-22 Thread Adam Majer
Jeff Bean wrote:
> 
> 
> Adam Majer-2 wrote:
>> Installing the runtime from VS2005 SP1 using the merge module (yes,
>> correct version) does NOT work on Vista while it works *perfectly* on
>> 2003 server - both clean installs of the respective OS. Both OSes need
>> the runtime installed for the program to run.
>>
>> The install log on Vista indicates that the merge module dlls are being
>> installed into a null directory.
>>
> 
> Try moving the MERGE element down two lines so that it is just inside the
> outermost DIRECTORY element. That is where I put my MERGE element and it
> works for me on Vista. Also I used Language="1033" instead of Language ="0".

I "fixed" the problem.

Solution: Reinstall MS VS 2005 SP1

Lesson Learned: After installing service pack or even original VS,
*always* copy the merge modules to a safe place before they get
clobbered by some other SDK or "security patch".


I still have no idea why it worked on 2003 (2003 gives SxS not found
errors if SxS assembly not found) and it did not work on Vista. But it
was not a WiX problem. Same problem with VS Setup project.

- Adam


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Cannot install VC80 Runtime from VS2005 SP1 on Vista and Vista only

2007-10-22 Thread Adam Majer
Hi all,

Installing the runtime from VS2005 SP1 using the merge module (yes,
correct version) does NOT work on Vista while it works *perfectly* on
2003 server - both clean installs of the respective OS. Both OSes need
the runtime installed for the program to run.

The install log on Vista indicates that the merge module dlls are being
installed into a null directory. It just says that the dlls are
installed in

  Directory: ,

Then trying to start the application produces an error that the runtime
is not available. The Directory is listed using the same MSI file on
2003 server installation.

Tried WiX 2.x and 3.x and same results. Used WiX binary distribution.


I have created a very small program (one line command line) that shows
this problem. You may download it temporarily from:

  http://www.zombino.com/temp/source.zip

There is also an MSI of the binaries also available (2.2M)

  http://www.zombino.com/temp/test.msi

If you cannot be troubled to extract the 1K source.zip, the files to the
sources code in the zip file are:

  http://www.zombino.com/temp/source/main.cpp
  http://www.zombino.com/temp/source/main.wxs
  http://www.zombino.com/temp/source/Makefile

You may need to adjust your paths to compile the example. The test is
installed under Test of Program Files.

Any ideas why Vista install is crapping out?

- Adam


-
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users