Click here to Skip to main content
15,867,308 members
Please Sign up or sign in to vote.
2.50/5 (2 votes)
See more:
I know you people are all updated like me, wants to work with visual studio 2012 and there is passion in your heart for better performance in size and time.
But the problem arise with sql server 2008 express , it is very slow in installation and Microsoft created sql local db 2012 for local databases on end user computers to be very fast in installation.
So what now?
The problem is vs 2010 is not supporting new prerequisites, So which installer can install this msi package. i searched 7 days for this. nothing! they just install sql server 2012 express that is so big and bad for user.
So i find a way to instal it by system.process, but it can't be instal silently and that's because license, i tried so much, without any result, can anyone help me here?

my code:
C#
public bool fncInstal32(string sMSIPath)
      {
          try
          {
              Console.WriteLine("Starting to install application");
              Process process = new Process();
              process.StartInfo.FileName = "msiexec.exe";
              process.StartInfo.Arguments = string.Format(" /qf /i \"{0}\" ALLUSERS=1  IACCEPTSQLNCLILICENSETERMS=YES", sMSIPath);
              process.Start();
              process.WaitForExit();
              Console.WriteLine("Application installed successfully!");
              return true; //Return True if process ended successfully
          }
          catch
          {
              Console.WriteLine("There was a problem installing the application!");
              return false;  //Return False if process ended unsuccessfully
          }
      }


When i change qf to qb it won't install silently!! why?
qf= full gui
qb= silent mode
Posted
Comments
PIEBALDconsult 17-Jan-13 14:45pm    
Personally, I just document what the app needs and let the user figure it out.

"install sql server 2012 express that is so big and bad for user"

Let them decide that for themselves.


There is also SQL Server CE which doesn't have to be "installed" at all. My feeling is that the best solution is to allow the user to install and use whichever of the three they prefer.
Sergey Alexandrovich Kryukov 17-Jan-13 15:04pm    
That's a good idea, I agree.
—SA
F.moghaddampoor 17-Jan-13 15:38pm    
but users don't know what is sql and what even it does!
how can i tell them use what you want. they are customers, they have needs!
my users even don't know english :))
Amir Rasekh 20-Jul-13 11:03am    
ProcessStartInfo inf = new ProcessStartInfo("SqlLocalDB.msi", "/qn IACCEPTSQLLOCALDBLICENSETERMS=YES") { UseShellExecute = true, WindowStyle = ProcessWindowStyle.Normal };
System.Diagnostics.Process.Start(inf);

1 solution

ProcessStartInfo inf = new ProcessStartInfo("SqlLocalDB.msi", "/qn IACCEPTSQLLOCALDBLICENSETERMS=YES") { UseShellExecute = true, WindowStyle = ProcessWindowStyle.Normal };

System.Diagnostics.Process.Start(inf);
 
Share this answer
 
Comments
mtalhajamil 3-Apr-15 23:09pm    
@Amir Rasekh
I am new in development. Please tell me where to add these lines of code?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900