Having at last got an Asp.Net Mvc 4 project template working on the Mac/Xamarin/Mono, I came to grief again when deploying it to a Windows hosted server. The problem is that whereas mono works without
Microsoft.Web.Infrastructure.dll (and indeed is likely to give errors if you have it), for hosting on Windows you must re-include it.
So my deploy process now includes putting
Microsoft.Web.Infrastructure.dll back in the web application
bin/ directory; and now I can develop on the Mac and deploy to a Windows Server.
The problem: Someone has lost the sa admin password for your MS Sql Server; or the one person who has SQL admin rights has left the company. Alas, you find that even having Windows admin rights does not grant you access because you have a recent version of Sql Server and you didn’t grant Sql Server admin rights to the machine or domain admins.
You can still fix this. You will need local admin right on the machine, and the ability to:
- open a command line as an administrator
- look through the registry with RegEdit to find the settings for the version and instance of Sql Server you are locked out of. MSDN mssqlserverloginmode-registry-key has some clues.
- look through
Program Files\Microsoft SQL Server\ and find the
binn directory for your version and instance of Sql Server.
The trick is to start Sql Server in single user mode, and then login as a local admin. This will give you admin access to the SQl Server.
How to Get Admin Access to Sql Server on Your Machine
- Stop the sql service.
- This is most easily done via the Windows Services Gui, but
net stop MSSQLSERVER might do it. If you have a named instance use
net stop MSSQL$instancename
- Work out the file location and registry key for the version/instance name of sql server you are trying to get into. This may be trickier than you think – you may have SqlExpress as well as more than one version and instance name of MSSQLServer. For instance:
C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn and
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQLServer\
C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn and
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.SQLEXPRESS
- Change the registry entry for loginmode to 2 (not 0 or 1), which enables both Windows and SQL authentication.
- Open a command line window as administrator and navigate to the
binn directory you found earlier under
C:\Program Files\Microsoft SQL Server\. Run sql from the command line using the
- You may need more command line parameters to get your instance running properly, although I never have so far. If so, use the Windows Services Gui to see what the rest of your command line has to be.
- For a named instance, your command line is
sqlserver.exe -f -s instancename
- An alternative to
-f worked for me.
- Open another commandline, also as administrator, and run
sqlcmd –S <servername>.
Sqlcmd is usually on the path, but if not it should be in the same directory as
- The server name for local machine is of course ‘
.‘, as in
sqlcmd -S .
- Now you can type T-SQL commands. Try
Select @@ServerName, @@Version just for fun.
- Note that after typing your commands you must type
GO and enter before anything you’ve typed gets sent to the server.
- Add yourself to the sysadmin role:
EXEC sp_addsrvrolemember 'DomainName\LoginName', 'sysadmin'
- Or, enable the sa login and set the password with 2 lines of T-Sql:
Alter login sa With Password= '<enterStrongPasswordHere>'
Alter login sa Enable
- Exit and close both command windows.
- Restart the Sql Server service from the services Gui or with
net start MSSQLSERVER or
net start MSSQL$instancename
Relief comes from an unexpected quarter if you pine for your unix command line shell aliases and other such:
doskey ls=dir $*
is what you want. you can put it in an autorun setting in your registry by pasting this into notepad and saving it as
Windows Registry Editor Version 5.00
If you prefer to do it by hand rather than by double clicking a .reg file, you don’t need the extra quotes and escapes (but keep the outermost quotes):
Note you use
$* instead of
%*. You can otherwise use
$1-$9. Further escape codes are on the technet DosKey page
Updated April 2014
Apple have at long last provided not only direct download links for Windows drivers, but also tables of which link you need for each model/year. If you can work out which model of apple you have, you can now get the direct download link from the apple site.
How to find the correct BootCamp direct download link for your Mac model
- Go to this page: http://support.apple.com/kb/HT5634
- About half way down the page, find the heading “Boot Camp requirements by Mac model”
- Under that, find the heading for your Mac model. There are headings for MacBook Pro, MacBook Air, MacBook, iMac, Mac mini and Mac Pro.
- Each heading hides a table by model & year vs. windows version. There are direct download links for Windows 8 and Windows 7, for 32-bit and 64-bit.
- Choose your download. Done.
How do I work out which Mac model I have?
- The same page has instructions. With pictures!
I downloaded. Now what?
- Each download link includes instructions
But I’m in Windows already, and I can’t open this .pkg file download Apple has just given me
Then you want this page: www.cafe-encounter.net/p860/opening-a-bootcamp-driver-download-on-windows-7-or-8-with-7-zip
Only 64-bit drivers are listed but I want 32-bit drivers. Or vice versa
You’re stepping into the realm of the unsupported, so you’re at your own risk here. What you can try is: get the download you think you want; open it with 7-zip; Now instead of running the installer, open the Folder that contains the individual driver installers. Run each of those. If it doesn’t work, you can uninstall from the Windows Control Panel and try again with the drivers Apple said you should use.
My model isn’t listed on that Apple page
Ah. Thats sad. You may be looking for the impossible. Your last hope is probably to try this page on older Mac models http://www.cafe-encounter.net/p682/download-bootcamp-drivers For models older than that, you’re in the era before BootCamp downloads, and you probably need an OS X Leopard or earlier install CD.
Had enough of arguing about agile? Concerned that software development has been side-tracked by religious war? Keen to inject an element of pragmatism, not to mention fact-based-ness into the debates? Perhaps what you need is a New Deal at http://www.the-new-deal.org