Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. .NET (Core and Framework)
  4. Setup and Deployment Question

Setup and Deployment Question

Scheduled Pinned Locked Moved .NET (Core and Framework)
questioncsharpsysadminworkspace
4 Posts 3 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G Offline
    G Offline
    godspeed123
    wrote on last edited by
    #1

    Hi, I want to stop a dll from installing if it is already there, I have .NET 2005, do I have to do something in the conditions side. If so what do I need to put there to stop it, and how do I go about making a condition. Thanks in advance

    L M 2 Replies Last reply
    0
    • G godspeed123

      Hi, I want to stop a dll from installing if it is already there, I have .NET 2005, do I have to do something in the conditions side. If so what do I need to put there to stop it, and how do I go about making a condition. Thanks in advance

      L Offline
      L Offline
      led mike
      wrote on last edited by
      #2

      godspeed123 wrote:

      If so what do I need to put there to stop it, and how do I go about making a condition.

      In a VS2005 Installer project when you click in the "Condition" property of the file the help at the bottom of the property view says it is a "Windows Installer Condition". So if one goes to MSDN one can find the Windows Installer Guide[^] and proceeding from there one can find Conditional Statement Syntax[^] and also Examples of Conditional Statement Syntax[^]. There is much more there as well but I'm moving on now. Good luck

      led mike

      G 1 Reply Last reply
      0
      • L led mike

        godspeed123 wrote:

        If so what do I need to put there to stop it, and how do I go about making a condition.

        In a VS2005 Installer project when you click in the "Condition" property of the file the help at the bottom of the property view says it is a "Windows Installer Condition". So if one goes to MSDN one can find the Windows Installer Guide[^] and proceeding from there one can find Conditional Statement Syntax[^] and also Examples of Conditional Statement Syntax[^]. There is much more there as well but I'm moving on now. Good luck

        led mike

        G Offline
        G Offline
        godspeed123
        wrote on last edited by
        #3

        The issue that I am getting, is the following: When I run the setup program, I get the error: The windows installer service cannot update the system file C:\Windows\system32\msvcrt.dll because the file is protected by Windows.... What do I have to do in the setup program to stop thins error from coming up? Thanks for all the help

        1 Reply Last reply
        0
        • G godspeed123

          Hi, I want to stop a dll from installing if it is already there, I have .NET 2005, do I have to do something in the conditions side. If so what do I need to put there to stop it, and how do I go about making a condition. Thanks in advance

          M Offline
          M Offline
          Mike Dimmick
          wrote on last edited by
          #4

          Windows Installer packages should always 'install' every component that they include. The Windows Installer runtime will decide whether or not to install a file. It records every package that installs a component and only removes the component when no references remain. Be very aware that Windows Installer makes these decisions on a component GUID basis, not by using file paths. If one file has a different GUID in different packages, when one is uninstalled, Windows Installer will decide that the file is no longer used and will remove it, breaking the other installation. For this reason any shared files installed to the same location should always have the same GUID. The only way to do this in Visual Studio's setup packages, that I'm aware of, is to create a Merge Module containing the shared components and include that Merge Module in all install packages. I believe Windows Installer counts references to assemblies installed in the GAC separately, so I think it's safe to install the same assembly to the GAC using different references. Still, it's better to follow the same pattern throughout. In general, you should follow the supplier's advice for installing any third-party components. That may well mean running their installer before yours. Best practice in my view is to install everything into your own private binary folder. You should avoid strong naming, in my opinion, as that will cause lookups in the GAC even if the file is in the binary folder. If you aren't versioning your assemblies correctly, an administrator can break your application by putting the assembly in the GAC, as the GAC takes precedence over local folders for strong-named assemblies.

          DoEvents: Generating unexpected recursion since 1991

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • World
          • Users
          • Groups