Solved

C Sharp

Posted on 2014-03-28
4
250 Views
Last Modified: 2014-04-06
Hi Guys ,

I have finished building my first windows form application with C# and now I don't know how to continue and make it works for users.

I used visual studio when I built this app and when I copy the solution to the user computer and launch the EXE file all works fine but I'm sure this is not the way to do it.

Another things I have to mention that the application database located in the SQL server and I have pointed the application to my SQL server by String code

Please can you direct me how to compile my application as a production app ....I hope you understand my question as I really new with programming.


Thanks ,
0
Comment
Question by:Moti Mashiah
  • 2
  • 2
4 Comments
 
LVL 13

Assisted Solution

by:Naman Goel
Naman Goel earned 500 total points
ID: 39963418
You need to compile your project in Release and package it with some installer,

http://www.dreamincode.net/forums/topic/58021-deploying-a-c%23-application-visual-studio-setup-project/

for connection string you can use some sort of Application config file


Start with: http://msdn.microsoft.com/en-us/library/1xtk877y.aspx. For connection string-specific information, please see: http://msdn.microsoft.com/en-us/library/ms254494(v=vs.110).aspx

At its simplest, the app.config is an XML file with built-in configuration sections and the ability to add your own custom settings. Custom settings can be added by using the built-in configuration sections (such as connectionStrings) or adding your own custom configuration sections (an advanced topic, but very powerful for building strongly-typed configuration files).

Web applications typically have a web.config, while Windows GUI/service applications have an app.config file.

Application config files inherit settings from global configuration files, e.g. the machine.config.
Reading from the App.Config

Connection strings have a pre-defined schema that you can use. Note that this small snippet is actually a valid app.config (or web.config) file:

<?xml version="1.0"?>
<configuration>
    <connectionStrings>  
        <add name="MyKey"
             connectionString="Data Source=localhost;Initial Catalog=ABC;"
             providerName="System.Data.SqlClient"/>
    </connectionStrings>
</configuration>

Once you have defined your app.config, you can read it in code using the ConfigurationManager class. Don't be intimidated by the verbose MSDN examples; it's actually quite simple.

string connectionString = ConfigurationManager.ConnectionStrings["MyKey"].ConnectionString;

Writing to the App.Config

Frequently changing the *.config files is usually not a good idea, but it sounds like you only want to perform one-time setup.

See: Change connection string & reload app.config at run time which describes how to update the connectionStrings section of the *.config file at runtime.

Note that ideally you would perform such configuration changes from a simple installer.
0
 
LVL 1

Accepted Solution

by:
Moti Mashiah earned 0 total points
ID: 39963810
Regarding the Connection I did not configure any connection in app.config file al I did during the implementation is in any class or form I wrote string to my database server:

See example:

namespace Alt8
{

    public partial class frmLogin : Form
    {

        public frmLogin()
        {
            InitializeComponent();
            txtpass_Login.PasswordChar = '*';
            txtpass_Login.MaxLength = 12;  
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                string Conn = "Data Source=srv-db-02;Initial Catalog=rmsmasterdbtest;Persist Security Info=True;User ID=test;Password=masterB4";
                SqlConnection Myconn = new SqlConnection(Conn);
                SqlCommand SelectCommand = new SqlCommand("select * from rmsmasterdbtest.dbo.UserLogin where Fname='" + this.txtUsernamelogin.Text + "' and passw='" + this.txtpass_Login.Text + "' ;", Myconn);

                SqlDataReader reader;
                Myconn.Open();
                reader = SelectCommand.ExecuteReader();
                int count = 0;
                while (reader.Read())
                {
                    count = count + 1;
                }
                if (count == 1)
                {
                    this.Hide();
                    frmMainmanu f2 = new frmMainmanu("Welcome," +txtUsernamelogin.Text);
                    f2.ShowDialog();
                }
                else if (count > 1)
                {
                    MessageBox.Show("Duplicate username and password.....access denied");
                }
                else
                    MessageBox.Show("Username and Password is Not Correct");
                Myconn.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
0
 
LVL 13

Assisted Solution

by:Naman Goel
Naman Goel earned 500 total points
ID: 39964114
In any ways the database should be there in customer environment, so either you can create a database using your installer program, so in that case you need to ask user for username and password for accessing that database

following article explains about creating database programmatically

http://support.microsoft.com/kb/305079

can need to pass that details in connection string in your class.
0
 
LVL 1

Author Closing Comment

by:Moti Mashiah
ID: 39981033
Thank for really great help
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction: Dialogs (2) modeless dialog and a worker thread.  Handling data shared between threads.  Recursive functions. Continuing from the tenth article about sudoku.   Last article we worked with a modal dialog to help maintain informat…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now