Ask a questionAsk a question
 

QuestionPublish ClickOnce always uses x64

  • Tuesday, November 03, 2009 11:37 PMBCsete Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hi,

    I have all my target platforms in the Compile tab set to x86, but when I publish, the output window shows it trying to compile the dlls in the project with x64.  Do you know where that is getting picked up?

    Bill

All Replies

  • Wednesday, November 04, 2009 12:40 AMRobinDotNetMVP, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hi BCsete,

    If you look at the top of Visual Studio, you see the dropdown for the build configurations, and one of mine has Release and Debug, and the other has "Any CPU". what does your say? Also, if you bring up the build configuration, is it building to x64?

    RobinDotNet
    Click here to visit my ClickOnce blog!
    Microsoft MVP, Client App Dev
  • Wednesday, November 04, 2009 3:21 AMBCsete Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hi Robin,

    The guru herself!  Thanks for responding.  I work in Debug normally and then compile the entire app in release mode.  The platform is x86 on all my projects and on all the platforms.  I looked at the advanced compile settings as well.

    When I publish, it skips my 3 dll projects with some x64 message.  I finally did get my main app to compile with x86 during this process.  I unloaded the project and edited the xml.  I changed all the x64 to x86 and then reloaded the project.  I think that helped, but I still can't tell where ClickOnce is getting the compile configuration settings.

    By the way, my application has a service as part of it. Can ClickOnce install a service?

    Thanks for your help.

    Bill
  • Wednesday, November 04, 2009 7:30 AMKira QianMSFT, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hi Bill,

    Where did you see the x64 message? I think that doesn’t matter. The important thing is the application will be run under x86 mode on an x64 OS. When running the application on x64 OS, you can open the Task Management to view the state of the application. Do you see “*32 ” after the name of “Image Name” on the “Processes” page?

    Sincerely,
    Kira Qian
    MSDN Subscriber Support in Forum
    If you have any feedback on our support, please contact msdnmg@microsoft.com
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework!
  • Wednesday, November 04, 2009 7:32 AMRobinDotNetMVP, ModeratorUsers MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    Bill,

    Ha! Guru indeed. LOL.

    I'll have to fire up my VS and take a look at the config settings, and report back.  Can you tell me exactly where you have set everything to x86, and is there a reason you're not using "any cpu" ? Will your app not work on a 64-bit machine unless it is compiled as a 32-bit app?

    In the meantime, the question about the service is no, ClickOnce can't be used to install and run a service. For one thing, there is no UI element that will run and invoke the updates. For another, windows services require privileges to install and run, and ClickOnce applications do not have any privileges.

    RobinDotNet


    Click here to visit my ClickOnce blog!
    Microsoft MVP, Client App Dev