Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I am new to ClickOnce deployment and unfortunately got stuck quite early. Upfront, I am not a programmer in the first place..
The task would be to run an application written in Visual/C# from a website. In the end, my problem is how to get my compiled project linked to a website so someone can execute it from there. Where must which files be located/ whats the important code.
See, I dont have much knowledge in web-development..
What would be the most simple set-up to understand the concept?
I would also highly appreaciate any recommendations for tutorials, etc.
Regards,
mulm
You can't actually "run a C# program from a website" but you can download it to a users machine and execute it from there. Either Clickonce or XBAP (depending on the architecture of the client application you are attempting to run) is the way to do this. Clearly they will only run on Windows client PCs though.
Visual Studio does have a lot of tools that make publishing ClickOnce applications vrey straightforward, so I'd follow the microsoft tutorials on publishing them (there is literally a button in Visual Studio that says "publish" for deploying ClickOnce applications to a web location).
If you look inside the published .Html you can see its just a URL to a .application file. Open the .application file and its just an XML file listing the application components to install, strong names, and dependencies. The .application extension is recognised by Windows IE which interrogates it and downloads and installs the nominated files. It installs the files into a user-local and app version specific location (the user cannot choose where to install it) and adds a link to the desktop. When the user launches it, a wrapper application checks the original URL location for an updated .application and installs the new copy if there is one, otherwise it launches the existing one.
One thing that often causes problems for ClickOnce users is that there is no built-in way to determine which site your ClickOnce application was launched or installed from - and typically the application author wants to interact with a data source available on that site. You will need to modify the .application file by hand to add in that kind of data, and re-sign it (it has a checksum built in) before making it available. This process is covered here https://msdn.microsoft.com/en-us/library/dd465299.aspx which also has a lot of background on the process.
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
So a friend has asked to develop a desktop application in order to ease his work, it's not too big or crazy just some simple crud operation and some search tasks here & there.
I have finished the application now it's time to deliver it.
I have never delivered an app before and never really found myself in that situation since I am a total beginner with absolutely no real world experience so am super new to this, but I can handle and deliver what I am asked to do.
Some information about the application:
Developped using C# ( winforms ) on top of .Net ( 4.5 )
SQL Server 2014
Entity Framework 6.
So how do I deliver this to his workstation, I have read in the last days these a lot ( release , deploy , publish ) kinda got confused because the explanations were too vague plus the english that was used was a little bit difficult for me since it's not my native language.
Please let me know what should I be aware of, and I would love to see like step by step how to do this, and how professionals do it.
Thanks in advance and have a nice day to each and every one of you.
For my solution (Windows Form application with a SQL Server Database using EntityFramework), I used ClickOnce to publish it.
How to: Publish a ClickOnce Application using the Publish Wizard
You have to be sure that all the assembly you use in your project (.dll) are installed on the computer like those containing entity framework. You can easily find them on Microsoft website.
If your database is a local database, you have to install sql server express LocalDB on the computer.
And then, you only have to double click on the generated file from clickOnce and it will launch an installer wizard. If it fail, it shows you the error in detail and you can easily fix it.
Finally, you have to validate the connection string in your configuration file to be sure that it is pointing to your database.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
Actually my question is almost similar to this question.
But I have more demands to satisfy.
Actually my web project is developed with ASP.net and C#.And I build it using a tool call "Nant" because I want to install this web project to DotNetNuke(DNN).
So I can create build file using "Nant" tool and then I want to make intallation wizard to host this web project in another computer.
So following demands should be satisfied
I need to install required databases in client computer.
I need to update the connection string in web.config file based the database.
I need to create ODBC connection and save their names in my project config file.
I need to create an application in application pool of IIS.
I need to host my project in IIS.
So question in the link I provided is suggested to use professional edition of advance installer to do this.Actually I have no idea about Advance installer can satisfy all of my demands.
But I want some other solution to do this? Can't I create my own installation wizard by coding? Aren't there any visual studio libraries which can help me?
Please help me.
Thanking you
You can use install shield to do the basic operation. lets go through your steps one by one.
List item installshield has the db folder path and files to move, you can use installshield directory variables to get the path e.g [TARGETDIR]
There is a work around for this, don't put that connection string in webconfig, make a simple text file and put it inside, this may require a little bid code change as well,where you are accessing it. if you dont want to do so read the details after steps.
same as 2,
supported by installed shield
supported by installed shield
Ok Now, for step 2 and step 3, you can also use the webconfig and project file but for this you need to make a console application and parse the files to replace connectionstring etc. Put it under your project and set the target path via installshield of target machine.
this will act like a batch file and you can run it by adding custom actions to your project.
To see how to run any console app or batch follow this
How to run a ".bat" file during installation?
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I want to do a visual studio team project with a friend of mine. I looked at the Team Explorer tab in visual studio but I don't understand some of the words / terminologies there. For example, what is Source Control Explorer, Build Definitions etc.? I've already created a team project but how can I work on it? Where do I write code? I'm assuming that after I finish the code, the code is uploaded to something like xxxx.visualstudio.com and others can access my code files there. Am I correct? (I guess not)
On the other hand, How can I add people to my team? Visual Studio Online tells me to enter the username or the sign in address of the user. Is "sign in address" the Microsoft account of the user?
This applies to TFS, if you use Git it will be different:
Source Control Explorer is, well, how you look at source control. The primary thing you will do there is checkout projects.
Build Definitions is were you configure build server builds.
Pending Changes is where you check-in files you have changed locally
To work on your project, you have to create a workspace (using Source Control Explorer) that maps the repository to your local system. Then create your solution there, and to make things easy check "Add to source control". Otherwise, you need to manually mark it for addition (again, using Source Control Explorer).
Check-in using the pending changes tab. If you don't have your own TFS server (sounds like you don't) then the code will be uploaded to an online server. I'm not aware of any web interface, but there could be one.
You will add other users based on their Microsoft account in the online scenario, and via TFS or Active Directory users if you are on a local TFS server.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I'm working on an Asp.net MVC + WebApi application that's using Azure (SQL, Storage) in the back and Angular in the front. Locally I'm running MS SQL and Azure Storage Emulator. But I desperately need some extra development brains because there's just too much work to do.
I've got a good client-side developer that will be able to help me on the Angular part of the app as well as on LESS files. So pretty much the client-side only.
The problem is that he's never used Visual Studio and doesn't intend to start doing so just for this project. He's used to client-side tools, smart editors like Sublime and similar and client automation services like Grunt or Gulp that could replace Web Essentials auto compilation of LESS files.
But there'll always be the problems of *.csproj files (they'd likely mess it up with manual edits if at all), app compilation (although that would be possible with some batch files), manage NuGet packages, database upgrades etc. It just seems too complicated without Visual Studio's automation.
So how can you sufficiently work on a .net project without Visual Studio (or WebMatrix)? and still be able to:
add new/remove/rename files in the project
add/remove/upgrade NuGet packages
compile the app as other devs may've changed backend to support something new on the client
else?
Who has done it, which tools should be used and how painful is it?
Note: I'm not asking about software recommendations even though may read that way. I'm mostly interested in your experience and whether I should force that developer to go hands on with Visual Studio or not...
I'm not going to say that it isn't possible to work on a Visual Studio project without Visual Studio, but I'm definitely going to say that it isn't at all feasible.
If you are building a Microsoft MVC system within Visual Studio, then you have made that system dependent on Visual Studio. The 'Solution' and 'Project' files are dependent on Visual Studio. Even though they are technically XML files that can be manually manipulated, it's just not feasible to go that route.
If your developer has the resources and capabilities of installing/using Visual Studio, that's the route that s/he needs to go. The fact that s/he has no prior experience working within Visual Studio, to me, isn't a good excuse.
IMO :-
You should force the developer to use VS because in the end it is
just a tool to use, with lot helpful(needed) features.
The porting of Project would required hell of a effort and Skills, So
in the end you will waste most development time in it than it would
take the developer to get familiar with VS.
This would be good for developer to learn and expand his
knowledge-base about IDEs, If he is thinking that it would be hard or
not interested to learn new stuff. Then I think you got the wrong guy
:)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question appears to be off-topic because it lacks sufficient information to diagnose the problem. Describe your problem in more detail or include a minimal example in the question itself.
Closed 8 years ago.
Improve this question
I have hosted asp.net application on windows 7 64-bit operating system (IIS 6.0).
The problem is I am able to browse some pages of the application while other pages are not opening. Browser response is:
This webpage is not available
These specific pages are using some .pdf files folder and a *.txt file to read and write which are in root directory of application.
Is there anybody that knows what is the thing that I have missed during deployment?
It is like when I hit one page
1) http://xxx.xx.xx.xxx/page1.aspx (webpage working file).
This page reads some gmail inbox and displays result after some manipulation.
2) http://xxx.xx.xx.xxx/page2.aspx (webpage not available).
Second page in same directory does not working. This page is reading/writing some *.pdf files and *.txt files.
Timeout is not problem here.
In your comments you mention transferring to a new host.
There are several possibilities depending on what you are actually doing.
Security. Generally speaking, writing files to the root of your web app is a very bad security issue. If the system is properly configured on the new host then that is likely killing your pages. Actually, writing files anywhere is generally a bad idea unless you have taken the time to configure it and know what you are doing.
PDF/TXT file delivery. The IIS server needs to have it's mime types properly configured in order to deliver those types of files to the browser. If you are linking directly to a file with a .pdf or .txt extension and having a problem then the server might be misconfigured for those.
The best thing to do would be to change your web.config file so that it will give you the actual error message. You can do this by changing the customErrors element to have mode=Off
Note that you might also have to configure your browser to turn off "friendly http errors" if using IE for browsing.
use proper/correct activeX for displaying the PDF (Adobe comes with a free Active X dll (even for Reader) called AcroPDF.dll)