Wednesday, December 02, 2009

Disable the authentication loopback check

Re-enable the behavior that exists in Windows Server 2008 by setting the DisableLoopbackCheck registry entry in the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa registry subkey to 1.

To set the DisableLoopbackCheck registry entry to 1, follow these steps on the client computer:

1. Click Start, click Run, type regedit, and then click OK.
2. Locate and then click the following registry subkey: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
3. Right-click Lsa, point to New, and then click DWORD Value.
4. Type DisableLoopbackCheck, and then press ENTER.
5. Right-click DisableLoopbackCheck, and then click Modify.
6. In the Value data box, type 1, and then click OK.
7. Exit Registry Editor.
8. Restart the computer.

Note You must restart the server for this change to take effect. By default, loopback check functionality is turned on in Windows Server 2003 SP1, and the DisableLoopbackCheck registry entry is set to 0 (zero).

The security is reduced when you disable the authentication loopback check, and you open the Windows Server 2003 server for man-in-the-middle (MITM) attacks on NTLM. (emphasis mine)

Team Explorer clear local cache

While switching between TFS Server (Team Foundation Server) it often happen that cached data on your local drive mass up connections.

To manage this simply clear the local folder which is used by the Team Explorer as local cache and everything should work again as planned.

What to do:

  • Close your Visual Studio
  • Navigate on your local drive to this location: "%userprofile%\Local Settings\Application Data\Microsoft\Team Foundation\2.0"
  • At this location you find a folder called "Cache" which is used by Team Explorer
  • You simply can rename the folder or even delete it. Team Explorer creates a new one upon next Start-Up of Visual Studio.
  • Start Visual Studio and access your TFS (Team Foundation Server) with a clean Team Explorer cache
enjoy :-)

Note: sometimes this applies if you try to create Team Project and it fails with the errro: TF30177. The above mention steps also helped me to resolve this issue: "TF30177: Team Project Creation Failed -> TFS 2010 Beta 2" - under Windows Server 2008 the cache folder of Team Explorer 2010 is located here: C:\Users\{username}\AppData\Local\Microsoft\Team Foundation\3.0\

Error
Unable to connect to the specified SQL Server Reporting Services at http://
{ServerName}/ReportServer/ReportService2005.asmx.
Explanation
The Project Creation Wizard was not able to connect to the SQL Server Reporting Services at http://{ServerName}/ReportServer/ReportService2005.asmx. The reason for the failed connection cannot be determined at this time. Because the connection failed, the wizard was not able to complete creating the SQL Server Reporting Services site.
User Action
Contact the administrator for the SQL Server Reporting Services at http:///ReportServer/ReportService2005.asmx to confirm that the server is available on the network and you have sufficient privileges to create a project. Also, you might find additional helpful information in the project creation log. The log shows each action taken by the wizard at the time of the failure and may include additional details about the error.


Saturday, November 28, 2009

write setup batch file based on processor architecure

take the following lines put it into a *.bat file and based on your OS the correct setup will be started.

@echo off
if /i "%PROCESSOR_ARCHITECTURE%" == "X86" "%~d0%~p0\x86\setup.exe"
if /i not "%PROCESSOR_ARCHITECTURE%" == "X86" "%~d0%~p0\x64\setup.exe"

Friday, November 27, 2009

TF30335: Connecting a Visual Studio 2008 Client SP1 to TFS 2010 (Team Foundation Server) Beta 2

Some Visual Studio 2008 SP1 installations can have a problem to connect TFS 2010 (Team Foundation Server) beta 2.



Simply add a Registry Key:
- Location: HKEY_CURRENT_USER/Software/Microsoft/VisualStudio/9.0/TeamFoundation/Servers
- String Type
- Value: http://your.tfs-machine.com:8080/tfs/DefaultCollection

Values to replace:
- your.tfs-machine.com: your FQNS (http://www.sharedcache.com)
- DefaultCollection: your collection name

Restart Visual Studio, done!

Thursday, November 12, 2009

TFS WSS extension installation for MOSS 2008 64bit

I found quite a lot of information about this issue around there but I had my problems to figure out where to download the extension. Finally I found them as a download link under "Visual Studio Team System 2008 Team Foundation Server Power Tools - October 2008 Release"

In the download section there is a download button for: WssExt64Bit.msi





Tuesday, November 10, 2009

Facebook SDK Overview provided by Microsoft

copied from the announcement:

This toolkit is provided as a Facebook Client Library similar to Facebook's PHP Client Library or Facebook's JavaScript library. The goal is to enable .NET developers to quickly and easily leverage the various features of the Facebook Platform. This toolkit has evolved over time with input from the community and from Microsoft. The latest release (v3.0) includes new architectural improvements and provides an asynchronous interface for using the toolkit from Silverlight and from WPF.

The main entry point is the API (Facebook.Rest.Api) class in the Facebook.dll assembly. This class wraps the Facebook REST API and provides an easy to use interface for calling the different methods currently available in the Facebook API. We've also provided samples and tools for helping develop Facebook applications in the various .NET platforms including: ASP.NET, Silverlight, WPF and WinForms. Additionally, we've provided all the source code for the API, components, controls, and samples for you to explore.

The toolkit is comprised of the following core assemblies:

  • Facebook.dll: This is the main assembly that will be used by all applications. This has all the logic to handle communication with the Facebook application. This assembly also has specific support of XAML applications (Silverlight and WPF) to enhance the Facebook platform to make databinding and data caching easier.
  • Facebook.Silverlight.dll: This is the Silverlight version of the main assembly that will be used by all Silverlight applications. This has all the logic to handle communication with the Facebook application. This assembly also has specific support of XAML applications to enhance the Facebook platform to make databinding and data caching easier. The REST API in this assembly is Asynchronous only.
  • Facebook.Web.dll: This assembly should be used by Canvas applications. The main functionality supported in this assembly is to encapsulate the handshake between the Facebook application and a canvas application (both FBML and IFrame)
  • Facebook.Web.Mvc.dll: Provide a support building canvas applications using ASP.NET MVC. Separated from Facebook.Web.dll to avoid all developers from needing to install the MVC bits.
  • Facebook.Winforms.dll: This assembly provides support for writing Facebook applications using Winform technology. This provides a Component that wraps the API to make it easier to use from Winforms. This also contains some user controls to help display Facebook data easily.
Source: http://msdn.microsoft.com/en-us/windows/ee388574.aspx

Some links from Facebook:

Monday, November 09, 2009

Twitter oAuth with .NET

Shannon Whitley blog entry about "Twitter oAuth with .NET"

Sunday, October 18, 2009

Choosing a smart password

Solution 2: Use a password with a mix of letters, numbers, and symbols

There are only 26^8 possible permutations for an 8-character password that uses just lowercase letters, while there are 94^8 possible permutations for an 8-character password that uses a combination of mixed-case letters, numbers, and symbols. That's over 6 quadrillion more possible variations for a mixed password, which makes it that much harder for anyone to guess or crack.

from: http://gmailblog.blogspot.com/2009/10/choosing-smart-password.html

Friday, October 16, 2009

jQueryPad




http://www.paulstovell.com/jquerypad


40+ great open source apps & games

40+ great open source apps & games to trick out your new Windows install - http://www.downloadsquad.com/2009/05/18/40-great-open-source-apps-and-games-to-trick-out-your-new-windows/

MS Build Shell Extension

MSBuildShellExtension lets you build .NET projects without ever opening Visual Studio or the command prompt. MSBuild targets can be executed from your favourite file system tool like Windows Explorer or Total Commander. The possibility to extend MSBuildShellExtension with your own targets and editors, makes it a very flexible and useful tool for all .NET developers.


Wednesday, September 30, 2009

Not enough storage available to add a user into Admin group

If you know you attend within a many Active Directory Groups then its possible to receive an error if you try to add additional users into e.g. administration group on a certain server. Not enough storage / memory - well then then try to add the following:


Registry: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters
new DWORD Value
name: MaxTokenSize
value (Decimal): 65535

after adding this registry key you have to reboot the server and then it works. Why exactly that happens I don't know but it happens if an active directory account attends to much active directory groups.

since this have to be done on every single machine it should be covered in a company rule which is distributed to every machine then this cause eventually also other problems.

Monday, September 21, 2009

Microsoft launches CDN for AJAX

The free Microsoft AJAX CDN provides caching for libraries, improving Web site performance

Microsoft's ASP.Net team is offering a free AJAX CDN (content delivery network service) to cache AJAX libraries and boost Web site performance, a company official said this week.
With the Microsoft AJAX CDN, performance can be significantly improved for ASP.Net Web Forms and ASP.Net MVC applications using ASP.Net AJAX or jQuery libraries, said Scott Guthrie, corporate vice president of the Microsoft Developer Division, in a blog entry.

read the full article: http://news.idg.no/cw/art.cfm?id=CE83C22A-1A64-67EA-E4E9EF7A77915A48

Wednesday, September 16, 2009

Installing Sharepoint 2007 on Windows Server 2008 R2

we are using in our lab a clean installation of Windows Server 2008 R2 which is running as Hyper-V instance. Today we wanted to install a clean installation of Sharepoint 2007 with SP1 on this machine and we explorer an error that we are not able to install it. The setup is comes up with an error which is described here: http://support.microsoft.com/kb/962935 but this is not our szenario. A printscreen of this message can be found here: http://www.ronischuetz.com/images/SP_2007SP1_Inst_Error.png

@Microsoft,

my personal point of view is that it cannot be that we need to install first 2008, then Sharepoint 2007 with SP1, then SP2 and upgrade to 2008 R2. Nobody is going be happy with this solution and I hope we find a fast way how customers can install Sharepoint direclty on 2008 R2.


Anyway, thanks in advance for any further information how we should go on with this issue.

The issue is listed here:
http://social.msdn.microsoft.com/Forums/en-US/sharepointadmin/thread/91a6be50-9009-43c8-a37c-66cfb83d738f

and here:
http://stackoverflow.com/questions/1432417/installing-sharepoint-2007-on-windows-server-2008-r2

(a possible solution is already posted - i will try that and update the post)

Update:
Solution I used:
http://social.technet.microsoft.com/Forums/en-US/sharepointadmin/thread/183b5ab9-dc4b-4c27-aecd-55df60167a68

Sunday, September 13, 2009

ASP.NET Membership Tables Export to SQL File

With C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe its possible to create needed asp.net membership tables for authentification in web / win applications.

With this executable its also possible to create a SQL file and install it on every wanted database. To export everything to SQL file we just need to run the following command:

aspnet_regsql.exe -E -S localhost -d targetDBSchemaName -A all -sqlexportonly c:\membership.sql

The output of this script looks like this:

---------------------------------------
Starting execution of InstallCommon.SQL
---------------------------------------

(130 row(s) affected)
Creating the aspnet_Applications table...
Creating the aspnet_Users table...
Creating the aspnet_SchemaVersions table...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.

(0 row(s) affected)

(1 row(s) affected)
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
Creating the vw_aspnet_Applications view...
Creating the vw_aspnet_Users view...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
----------------------------------------
Completed execution of InstallCommon.SQL
----------------------------------------
-------------------------------------------
Starting execution of InstallMembership.SQL
-------------------------------------------
Creating the aspnet_Membership table...
Creating the vw_aspnet_MembershipUsers view...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.

(0 row(s) affected)

(1 row(s) affected)
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
--------------------------------------------
Completed execution of InstallMembership.SQL
--------------------------------------------
------------------------------------------------
Starting execution of InstallProfile.SQL
------------------------------------------------
Creating the aspnet_Profile table...
Creating the vw_aspnet_Profiles view...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.

(0 row(s) affected)

(1 row(s) affected)
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
-------------------------------------------------
Completed execution of InstallProfile.SQL
-------------------------------------------------
--------------------------------------
Starting execution of InstallRoles.SQL
--------------------------------------
Creating the aspnet_Roles table...
Creating the aspnet_UsersInRoles table...
Creating the vw_aspnet_Roles view...
Creating the vw_aspnet_UsersInRoles view...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.

(0 row(s) affected)

(1 row(s) affected)
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
---------------------------------------
Completed execution of InstallRoles.SQL
---------------------------------------
------------------------------------------------
Starting execution of InstallPersonalization.SQL
------------------------------------------------
Creating the aspnet_Paths table...
Creating the aspnet_PersonalizationAllUsers table...
Creating the aspnet_PersonalizationPerUser table...
Creating the vw_aspnet_WebPartState_Paths view...
Creating the vw_aspnet_WebPartState_Shared view...
Creating the vw_aspnet_WebPartState_User view...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.

(0 row(s) affected)

(1 row(s) affected)
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
-------------------------------------------------
Completed execution of InstallPersonalization.SQL
-------------------------------------------------
----------------------------------------------------
Starting execution of InstallWebEventSqlProvider.SQL
----------------------------------------------------
Creating the aspnet_WebEvent_Events table...
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.

(0 row(s) affected)

(1 row(s) affected)
Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.
-----------------------------------------------------
Completed execution of InstallWebEventSqlProvider.SQL
-----------------------------------------------------

Thursday, September 10, 2009

World’s smallest web server in C#

today I found the following code: World’s smallest web server


World’s smallest web server

It’s always fun to play with .Net, the HTTP Listener class in .Net 2.0 makes it really easy. With this little block of code you can setup a very simple (multithreaded) web server…

public class Server
{
private static System.Threading.AutoResetEvent listenForNextRequest = new System.Threading.AutoResetEvent(false);

protected Server()
{
_httpListener = new HttpListener();
}

private HttpListener _httpListener;

public string Prefix { get; set; }
public void Start()
{
if (String.IsNullOrEmpty(Prefix))
throw new InvalidOperationException("No prefix has been specified");
_httpListener.Prefixes.Clear();
_httpListener.Prefixes.Add(Prefix);
_httpListener.Start();
System.Threading.ThreadPool.QueueUserWorkItem(Listen);
}

internal void Stop()
{
_httpListener.Stop();
IsRunning = false;
}

public bool IsRunning { get; private set; }

private void ListenerCallback(IAsyncResult result)
{
HttpListener listener = result.AsyncState as HttpListener;
HttpListenerContext context = null;

if (listener == null)
// Nevermind
return;

try
{
context = listener.EndGetContext(result);
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex.ToString());
return;
}
finally
{
listenForNextRequest.Set();
}
if (context == null)
return;
ProcessRequest(context);
}

// Loop here to begin processing of new requests.
private void Listen(object state)
{
while (_httpListener.IsListening)
{
_httpListener.BeginGetContext(new AsyncCallback(ListenerCallback), _httpListener);
listenForNextRequest.WaitOne();
}
}

}

Tuesday, September 08, 2009

The /debug option causes the compiler to generate debugging information and place it in the output file or files.

C# Language Reference
/debug (Emit Debugging Information) (C# Compiler Options)

The /debug option causes the compiler to generate debugging information and place it in the output file or files.


/debug[+ | -]
/debug:{full | pdbonly}

Arguments

+ | -

Specifying +, or just /debug, causes the compiler to generate debugging information and place it in a program database (.pdb file). Specifying -, which is in effect if you do not specify /debug, causes no debug information to be created.
full | pdbonly

Specifies the type of debugging information generated by the compiler. The full argument, which is in effect if you do not specify /debug:pdbonly, enables attaching a debugger to the running program. Specifying pdbonly allows source code debugging when the program is started in the debugger but will only display assembler when the running program is attached to the debugger.


Remarks

Use this option to create debug builds. If /debug, /debug+, or /debug:full is not specified, you will not be able to debug the output file of your program.

If you use /debug:full, be aware that there is some impact on the speed and size of JIT optimized code and a small impact on code quality with /debug:full. We recommend /debug:pdbonly or no PDB for generating release code.
NoteNote:

One difference between /debug:pdbonly and /debug:full is that with /debug:full the compiler emits a DebuggableAttribute, which is used to tell the JIT compiler that debug information is available. Therefore, you will get an error if your code contains the DebuggableAttribute set to false if you use /debug:full.

For more information on how to configure the debug performance of an application, see Making an Image Easier to Debug.

To change the location of the .pdb file, see /pdb (Specify Debug Symbol File) (C# Compiler Options).

To set this compiler option in the Visual Studio development environment

1. Open the project's Properties page.
2. Click the Build property page.
3. Click the Advanced button.
4. Modify the Debug Info property.

For information on how to set this compiler option programmatically, see DebugSymbols.

Example

Place debugging information in output file app.pdb:

csc /debug /out:app.pdb test.cs

Twitter is over capacity

That's the second time today I receive the message on twitter:

Twitter is over capacity
To many tweets! Please wait a moment and try again.




Would that also happen if twitter would use .net C# ?? Just joking - great service twitter developers!

How to display product comparsions

  1. 70+ Examples of Product Comparison Tables in Web Design
  2. 25 Clear And Beautiful Comparison Tables

Monday, September 07, 2009

Sunday, September 06, 2009

Capturing ScreenShots in C#

found this today here: http://kseesharp.blogspot.com/2008/11/c-capture-screenshot.html

using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace KSeeSharp
{
class ScreenShot
{
[DllImport("gdi32.dll")]
static extern bool BitBlt(IntPtr hdcDest, int xDest, int yDest, int wDest, int hDest, IntPtr hdcSource, int xSrc, int ySrc, CopyPixelOperation rop);
[DllImport("user32.dll")]
static extern bool ReleaseDC(IntPtr hWnd, IntPtr hDc);
[DllImport("gdi32.dll")]
static extern IntPtr DeleteDC(IntPtr hDc);
[DllImport("gdi32.dll")]
static extern IntPtr DeleteObject(IntPtr hDc);
[DllImport("gdi32.dll")]
static extern IntPtr CreateCompatibleBitmap(IntPtr hdc, int nWidth, int nHeight);
[DllImport("gdi32.dll")]
static extern IntPtr CreateCompatibleDC(IntPtr hdc);
[DllImport("gdi32.dll")]
static extern IntPtr SelectObject(IntPtr hdc, IntPtr bmp);
[DllImport("user32.dll")]
public static extern IntPtr GetDesktopWindow();
[DllImport("user32.dll")]
public static extern IntPtr GetWindowDC(IntPtr ptr);

public void CaptureScreenShot(string filePath)
{
Size sz = Screen.PrimaryScreen.Bounds.Size;
IntPtr hDesk = GetDesktopWindow();
IntPtr hSrce = GetWindowDC(hDesk);
IntPtr hDest = CreateCompatibleDC(hSrce);
IntPtr hBmp = CreateCompatibleBitmap(hSrce, sz.Width, sz.Height);
IntPtr hOldBmp = SelectObject(hDest, hBmp);
bool b = BitBlt(hDest, 0, 0, sz.Width, sz.Height, hSrce, 0, 0, CopyPixelOperation.SourceCopy | CopyPixelOperation.CaptureBlt);
Bitmap bmp = Bitmap.FromHbitmap(hBmp);
SelectObject(hDest, hOldBmp);
DeleteObject(hBmp);
DeleteDC(hDest);
ReleaseDC(hDesk, hSrce);
bmp.Save(filePath);
bmp.Dispose();
}
}
}

would be intersting to know how to capture in C# only the IE Browser content :-)

New feature called branchcache

in my test installation of Windows Server 2008 R2 I found today below the "Add Features Wizard" the item: "Branchcache" and I was asking myself if this is based on Velocity CTP 3 or is this an indiviual development??



BranchCache

BranchCache, available on both Windows Server 2008 R2 and Windows 7, enables client computers in a branch office to retrieve content securely and locally, instead of retrieving it from a central office server. Because branch offices are typically connected over slower WAN links, BranchCache reduces WAN traffic, and increases application responsiveness on the client computer.






BranchCache installs the services needed to provide BranchCache client functionality. It also provides BranchCache server support for the HTTP protocol, Hostet Cache, and services other then the BranchCache for network files role service.

Thursday, September 03, 2009

Hyper-V Tips

  • Never save state on a Domain Controller, doing so can cause domain synchronization issues.
  • Never pause a Domain Controller, this can cause replication issues.
    Do not take Snapshots of Domain Controllers.
  • Use fixed size disks, this will improve performance, and help reduce disk fragmentation.
    Always defragment a physical disk before creating a virtual hard disk.
  • Be mindful of the intergration services affect on a Domain Controller. If you provide the time synchronization service to a Domain Controller, you can cause time synchronization issues in your domain.
  • Dont expand the Virtual Hard Disk if you have snapshots which haven’t merged with the main VHD. This will make it impossible to remerge them.
  • If you cannot merge your snapshot (avhd) files back into the main VHD. You can attempt to use Winimage (http://www.winimage.com) to retrieve the data from within the snapshot file. To do this simply rename the snapshot file from string.avhd to string.vhd then open with winimage.

Wednesday, September 02, 2009

Hyper-V Network and Windows Server 2003

If you setup a virtual machine with Windows Server 2003 Standard, Windows Server 2003 Enterprise or Windows Server 2003 Datacenter and you are missing your network then this happens because you have to install Windows Server 2003 Service Pack 2.

Without the Service Pack 2 of Windows Server 2003 the instance within Hyper-V will NOT recognize your network.

First you have to install Service Pack 2 and second you will have to install Hyper-V integration components. Due this your virtual machines guest have access to Microsoft VMBus Network Adapter.

Links:

Note: prepare yourself with a CD you can burn since you cannot map any USB stick to Hyper-V.


After we installed Windows Server 2003 Service Pack 2 we can install: Hyper-V integration components


After the restart we simply can configure our network and everything works:



enjoy!

Team Foundation Server & and & and & and

During the past 2 years I installed TFS 2008 (Team Foundation Server 2008) at least 25 times most of it for testing and migration purposes. Same I had to do now for a migration scenario from two single installations into a multi-layer installation.

Since Service Pack 1 is out it's possible to install TFS 2008 on Windows 2008 (x-86) and as we know there is now Windows 20008 R2 out but there are no downloads for x-86. Therefore we have to take an earlier Version: Windows Server 2008.

The installation guidance describes exactly what you have to do to run the installation. You have to configure several files, need to adapt WML checks as I posted in my earlier post yesterday: http://netrsc.blogspot.com/2009/09/tfs-sp1-installation-problem.html

At the end of the day it worked beside the "Reporting Services" - as usual! I will try not to get emotional now but it should not be a problem for Microsoft to create installation files which are as easy to install as previous installations.

I mean how much effort Microsoft have to put to create an installer for the following setup:
  • Windows 2003 Server Enterprise / Standard
  • Sql Server 2008
Press 15 times enter, choose your servers and done - no they prefer to handle thousands of forum messages, emails, sending responses to blog post etc.

take 10 % of your communication efforts and put them into a normal installer for single and multi installations with new software.

I really hope Micorosoft consider this for the next TFS 2010.

Another feedback would be to create a personal version of TFS -> Mini Tfs which would fit to the express editions for home use :-)


Swiss hostages still in Libya

The world does not talk about it so lets talk about it at Facebook group.

Hopefully there are a lot of people who join this supporter group. Assist our Swiss citizens which are still held in Libya as hostages: http://bit.ly/HJfZ1

Tuesday, September 01, 2009

TFS SP1 Installation Problem

For some testing I had to setup a Team Foundation Server with SP 1. To accomplish this mission I had to merge the service pack like it's described here:

  1. To integrate the installation of Team Foundation Server and Service Pack 1
    Download SP1 from the Microsoft Web site, and save the update to a folder on the local computer. For example, you can save the file to C:\SP1Download.
  2. From the files that originated on the DVD for Team Foundation Server, copy the AT folder to a location on the local computer. For example, you can copy the folder to C:\InstallMedia.
  3. Open a Command Prompt window, and type the following command, replacing C:\SP1Download with the location that you chose in step 1 and C:\SP1Extract with a separate location on the local computer:
    C:\SP1Download\TFS90SP1-KB949786-ENU /extract:C:\SP1Extract
  4. Create a folder where you can merge files from SP1 and the DVD.
    Type the following command, replacing C:\InstallMedia with the location that you chose in step 2, C:\SP1Extract with the location that you chose in step 3, and C:\MergeFolder with the absolute path of the location that you chose in step 4:
    msiexec /a C:\InstallMedia\vs_setup.msi /p C:\SP1Extract\TFS90sp1-KB949786.msp TARGETDIR=C:\MergeFolder
    Note:
    You must replace C:\MergeFolder with an absolute path, but you can replace C:\InstallMedia and C:\SP1Extract with absolute or relative paths.
  5. From C:\MergeFolder (which you created in step 4), run setup.exe to install Team Foundation Server with SP1.

Now if you use Microsoft SQL Server 2008 Service Pack 1 then you have to modify your hcpackage.xml (I attached my version at the end of this post). After some researches I could find this link: http://support.microsoft.com/kb/969985 Once you have done this the following errors should not appear anymore:
  • The selected instance of SQL Server is not compatible with Team Foundation Server 2008.
  • A compatible version of SQL Server is not installed.
  • The SQL Server Analysis Services assemblies are installed, but they are the SQL 2005 version instead of SQL 2008.

My modified hcpackage you can find here: http://www.ronischuetz.com/download/hcpackage.xml or download it: http://www.ronischuetz.com/download/hcpackage.zip

Facebook is down for me



What the hack - why Facebook.com is closing my account for a maintenance window???

using jQuery to catch the keyboard - amazing plugin

no need to write a lot about it - just check it out:

has been taken from here: http://9lessons.blogspot.com/2009/08/9-most-useful-jquery-plugins.html

Sunday, August 30, 2009

Hyper-V Server and Newsid

I havent tried it so far but I could imagne that we don't need to run NewSid anymore if we use the Wizard: "Import Virtual Machine" within the Server Manager.

Wednesday, August 26, 2009

RAM

Well I'm pretty sure I have now enough free RAM available for testing my upcoming new shared cache version properly with 64-bit:

Saturday, August 22, 2009

Hyper-V Server Blue Screen after usage of newsid

after I used sysinternals newsid on my virtual machine's I receive the following result:



Wednesday, August 19, 2009

Cool CSS vertical menu

Menu no. 1:




The article can be found here:
Simple CSS vertical menu Digg-like

Menu no. 2:

Make a Mega Drop-Down Menu with jQuery



The article can be found here:

Make a Mega Drop-Down Menu with jQuery

Wednesday, June 17, 2009

A BuildProvider to simplify your ASP.NET MVC Action Links

checkout the following links from David Ebbo's blog:

how to delete a xing membership

after investigating 15 min. in the FAQ section I decided to create a ticket to figure out how I can cancel my normal membership at xing -> https://www.xing.com/app/user?op=cancel just in case somebody else were searching for it.

Thursday, June 04, 2009

twitter.com :-)

joined new age: http://twitter.com/ronischuetz

IIS Search Engine Optimization Toolkit

SEO (search engine optimization) is one of the important considerations that any Internet web-site needs to design with in mind.
A non-trivial percentage of Internet traffic to sites is driven by search engines, and good SEO techniques can help increase site traffic even further.

Likewise, small mistakes can significantly impact the search relevance of your site’s content and cause you to miss out on the traffic that you should be receiving. Some of these mistakes include: multiple URLs on a site leading to the same content, broken links from a page, poorly chosen titles, descriptions, and keywords, large amounts of viewstate, invalid markup, etc.

These mistakes are often easy to fix - the challenge is how to discover and pinpoint them within a site.

http://weblogs.asp.net/scottgu/archive/2009/06/03/iis-search-engine-optimization-toolkit.aspx

Friday, May 29, 2009

The videos on Bing are really great

I were really ahead of the curve and predicted that Microsoft would name it's new Search Engine "Bing". The videos on Bing are really great. Microsoft could have a game changer here!
http://www.decisionengine.com/Default.html

Saturday, May 23, 2009

buy books @ amazon

I decided today to order some ASP.NET MVC Books for a project I develope for myself. Many issues are covered out there in the internet but sometimes it's much easier just to open a book and read in it. As a person who spend's lot of time in public transportation I try to use this time to learn and reading books.

So my today spendings are for the following books:

- Learning JQuery 1.3 by Jonathan Chaffer
- ASP.NET MVC 1.0 Quickly - Maarten Balliauw
- Professional ASP.NET MVC 1.0 - Rob Conery
- Pro ASP.NET MVC Framework - Steven Sanderson

Since all the books are available only in english I decided to check which amazon store would be cheaper for me and I got surprissed with some facts during my comparsion.

some examples:

  • amazon.com offers me a free shipping as long as the shipping address is within US. really cool, I'm leaving ins Swiss and after my login they should know that and don't offer me anything like that!
  • amazon.com offers me a package of common books together -> at the amazon.de store they didn't recogniz that I like to buy a bundle of books and they didn't offer me any offers at all.
  • after my selection i got the following checkout sum:
    amazon.com: 133.61 USD
    amazon.de : 133.22 EUR
  • Based on google conversation 133.22 EUR are 186.67 USD - this is quite a lot of money!!!
  • amazon.com and amazon.de both are offer me now to pay my bill in my local currency - based on my credit card payment currency. This save's me some 2.5% fee at my visa provider :-) nice.
  • Once the conversation is done I got an order toatal on amazon.com (173.03 CHF) and on amazon.de (139.01 CHF + 66.08 CHF => 205.09 CHF) this makes a difference of: 32.06 CHF

32.06 CHF is around 21.10 EURO and around 29.55 USD difference. In terms of global crises I think this is a lot of money and people out there should check where they buy books -> especially technical books which are mostly written only in english.

My personal conclusion is quite simple, there is no reason why I should spend my money at amazon.de!





Wednesday, May 13, 2009

Wednesday, May 06, 2009

Sunday, May 03, 2009

rounded corner for box styles in XHTML / CSS

Today I found a cool generator for rounded box layouts which is pretty simple to use. You only have to define your colors and click the button. You get all sources to create pretty rounded css boxes :-)

Simple and greate: http://www.neuroticweb.com/recursos/css-rounded-box/index.php

Css:
/* set millions of background images */
.rbroundbox { background: url(nt.gif) repeat; }
.rbtop div { background: url(tl.gif) no-repeat top left; }
.rbtop { background: url(tr.gif) no-repeat top right; }
.rbbot div { background: url(bl.gif) no-repeat bottom left; }
.rbbot { background: url(br.gif) no-repeat bottom right; }
/* height and width stuff, width not really nessisary. */
.rbtop div, .rbtop, .rbbot div, .rbbot {width: 100%;height: 7px;font-size: 1px;}
.rbcontent { margin: 0 7px; }.rbroundbox { width: 50%; margin: 1em auto; }

HTML:

<div class="rbroundbox">
<div class="rbtop"><div></div></div>
<div class="rbcontent">
<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ornare ultricies libero. Donec fringilla, eros at dapibus fermentum, tellus tellus auctor erat, vitae porta magna libero sed libero. Mauris sed leo. Aliquam aliquam. Maecenas vestibulum.
</p>
</div><!-- /rbcontent -->
<div class="rbbot"><div>
</div>
</div>
</div><!-- /rbroundbox -->





Images:
They provide a download for needed images.

Thursday, April 30, 2009

ASP.NET MVC Membership Group @ Google

For those people which are using my ASP.NET MVC Membership they getting invited to a google group to discuss issues or suggest features.

Homepage: http://groups.google.com/group/aspnet-membership

checkout the following links for more information about ASP.NET MVC Membership Administration:
1) http://netrsc.blogspot.com/2009/04/membership-management-for-aspnet-mvc.html
2) http://netrsc.blogspot.com/2009/04/aspnet-mvc-membership-management.html






Google Groups

ASP.NET Membership

Visit this group










Google Groups

Subscribe to ASP.NET Membership

Email:


Visit this group

Wednesday, April 29, 2009

ASP.NET MVC Membership Management

With the release of Microsoft Visual Studio 2005, there is no "out of the box" solution for maintaining the Membership and Role databases in Microsoft IIS. This is a problem when you move your application from development to a production IIS server. The utility that Microsoft provides, ASP.NET Web Configuration, can be run only in a development, non-production environment.

This sources and its associated code solve this by implementing a solution to Member and Role management while using standard Microsoft ASP.NET MVC tools. This means that it will run in any ASP.NET MVC 1.0 environment, including IIS.I found 3 projects for membership management were 2 of them are outdated and one is not working with current asp.net mvc release 1.0 (ASP.Net MVC Membership Starter Kit). Some of my code is based on the started kit but most stuff I had to rewrite or make coding changes to make it work with asp.net mvc release 1.0

In my previous blog I added some print screens how the asp.net mvc membership management looks like: http://netrsc.blogspot.com/2009/04/membership-management-for-aspnet-mvc.html

Since I'm developing already various open source projects I decided only to share this Visual Studio Content Installer for a donation of 30 EURO - (http://www.ronischuetz.com/donate.html). Once you have donated given amount you will receive an email with the download link. Please notice that any further updates are given out for free.

Instructions how to use the Visual Studio Content Installer for Asp.Net MVC Membership Management Template.

1. After downloading the given file you need to extract the zip file and you receive a *.vsi file. Upon double click on this *.vsi file the following screen appears. I decided not to sign it therefore is there no publisher details available.


2) If you use the link "View files in Windows Explorer" an explorer window opens and you should see the following screen.


3) Upon next button you receive the following screen - this happens because I havent added any digital signature.



4) Upon "Finish" the template will be installed.



5) The following screen informs about successfully installed asp.net mvc membership template.



6) Open a new instance of visual studio and select under Project Types: "WEB". In the section of "My Templates" you find the new installed ASP.NET MVC Membership Template. Enter an application name and select your favorite location.



7) As result of the project creation a normal MVC template will be installed with the asp.net mvc membership extensions. All files and folder which are marked with green color are added to the default project structure.

8) from this point you have a runnable asp.net mvc project. the missing part now is to add a asp.net membership database. If you have already one you only need to update your web.config file to your database.
Copyright Statement and Terms of Use

I reserves the right to modify these Terms of Use without notice and any modifications are effective when they are posted here. I may, at any time, in its discretion terminate your access to this Website and Software. If you are accessing this Web Site as a representative of an organization, these Terms of Use bind both you individually and the organization and references to "you" and "your" shall be construed to apply to you individually and the organization.
Disclaimer; Limitation of Liability; Indemnity

This Software and all information is provided "AS IS" and WITHOUT WARRANTY OR CONDITION OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING THOSE REGARDING THE ACCURACY OR COMPLETENESS OF THE INFORMATION, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT AND THOSE ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. It is up to you to take precautions to ensure that whatever you select for your use is free of such items as viruses, worms, trojan horses and other items of a destructive nature.
IN NO EVENT I'LL BE LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, THOSE RESULTING FROM LOST PROFITS, LOST DATA, LOST REVENUE OR BUSINESS INTERRUPTION) ARISING OUT OF THE USE, INABILITY TO USE, OR THE RESULTS OF USE OF, THIS SITE OR ANY SITE LINKED TO this blog or my personal WEBSITE: WWW.RONISCHUETZ.COM or WWW.RONISCHUETZ.NET. WITHOUT LIMITING THE FOREGOING, I SHALL BE NOT LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES THAT MAY RESULT FROM THE USE OF THIS SOFTWARE OR WEB SITE OR ANY WEB SITE INFORMATION WHETHER ARISING UNDER CONTRACT, NEGLIGENCE, TORT OR ANY OTHER LAW OR CAUSE OF ACTION.
SOME JURISDICTIONS DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY. ACCORDINGLY, SOME OF THE ABOVE MAY NOT APPLY TO YOU.
You agree to release, defend, indemnify and hold me harmless from and against any and all claims, liabilities, damages, losses or expenses, including reasonable attorneys' fees and costs, arising out of or in any way connected with your access to or use of this Software, Web Site or any Web Site Information.
Export and Trade Controls
You agree not to import, export, re-export, or transfer, directly or indirectly, any part of this Software, Web Site or any Web Site Information provided on or pursuant to this Web Site except in full compliance with all United States, foreign and other applicable laws and regulations.

Monday, April 27, 2009

ASP.NET MVC Action Filters project started at codeproject

I created a new project at codeplex which aims to contain a big collection of ASP.NET MVC Action Filters.

An action filter is an attribute you can slap on an action method in order to run some code before and after the action method executes. Typically, an action filter represents a cross-cutting concern to your action method. Output caching is a good example of a cross-cutting concern.

Hopefully a lot of people will provide their own Action Filters to create one big library which contains dozens of filters.

I found already several ASP.NET MVC Action Filters which solves the following problems:

  • Action Filter for Caching
  • Action Filter for Shared Cache
  • Action Filter to create easy REST API with JSON and XML
  • Action Filter for Health monitoring
  • Action Filter for LogFilters
  • Action Filter for Compression

If you have additional Action Filters please feel free to post them at http://mvcactionfilter.codeplex.com/.

Following link leads you to a tutorial about ASP.Net Action Filters: http://www.asp.net/learn/mvc/tutorial-14-cs.aspx

Sunday, April 19, 2009

ValidateInput Attribute in ASP.NET MVC - Potentially Dangerous Request.Form Values

By default, your controller actions will validate the Request.Form contents for potentially dangerous values. You will know this, because if you attempt to enter HTML tags in a form when submitting it:


e.g: <>

You will get the “A potentially dangerous Request.Form value was detected from the client...“ error as shown here:




ValidateInputAttribute in ASP.NET MVC
To get the validation of the Request.Form Values to turn off, there is a ValidationInputAttribute in the ASP.NET MVC Framework that you can use to decorate your MVC Action Methods or Controller Class to turn off input validation:

[AcceptVerbs(HttpVerbs.Post)]
[ValidateInput(false)]
public ActionResult Create(string title)
{
// Do Something...
}

Notice the ValidateInput Attribute above and the fact that I turned off validation by passing false to it.

If you look at the source of the ASP.NET MVC Framework you will see that the ValidateInput Attribute is masquerading as an IAuthorizationFilter so that it will be one of the first filters to run when a controller action is run. During the OnAuthorization Method it just quietly sets the controller's ValidateRequest Property to the value you passed to it ( false in this case ). That value of the property controls whether ValidateInput gets called on HttpRequest when the ControllerActionInvoker is invoking the action.

Good stuff to know as you start working with the ASP.NET MVC Framework.

Friday, April 17, 2009

IIS log analyzing tool based on LogAnalyzer

Indihiang Project is a IIS log analyzing tool based on LogAnalyzer. This tool analyzes IIS Web server in comprehensive graphs and reports. The project is located at codeplex: http://indihiang.codeplex.com/ and makes a very good impression. I could easly analyze IIS Logfiles which have a size of 1.2 GB and a bit more.

Project Features:
  • Web Log Viewer
  • Web Log Analyzer
  • Web Log Consolidation
  • Web Log Real-time Monitoring
  • Support for IIS6 and IIS7
  • Trend Data Analysis
  • Trend Data Reporting

Thursday, April 16, 2009

Change PROMPT default output

You can add within your Environment Variables the following value for variable PROMPT:

SET PROMPT=$T $P$G$S

If you don't have administrative rights then add this within user variables instead of system variables:



that's how the output looks like:



thanks to ronald for this tip.

Wednesday, April 15, 2009

takeover of Shared Cache?

please read the following thread: http://sharedcache.codeplex.com/Thread/View.aspx?ThreadId=53282

Membership Management for ASP.NET MVC release 1.0

update: checkout this post: Visual Studio Content Installer for Asp.Net MVC Membership Management

With the release of Microsoft Visual Studio 2005, there is no "out of the box" solution for maintaining the Membership and Role databases in Microsoft IIS. This is a problem when you move your application from development to a production IIS server. The utility that Microsoft provides, ASP.NET Web Configuration, can be run only in a development, non-production environment.

This sources and its associated code solve this by implementing solution to Member and Role management while using standard Microsoft ASP.NET MVC tools. This means that it will run in any ASP.NET MVC 1.0 environment, including IIS.

I found 3 projects for membership management were 2 of them are outdated and one is not working with current asp.net mvc release 1.0 (ASP.Net MVC Membership Starter Kit). Some of my code is based on the started kit but most stuff I had to rewrite or make coding changes to make it work with asp.net mvc release 1.0.

I'm writing already 2 open source projects therfore I'm not able to share this sources for free and I plan to sell you full source bundle for around 30 EURO. In the meanwhile, if you're interessted in the code you welcome to drop me a line (schuetz [@] gmail [dot] com).

Please use this page to donate the amount.


Please notice that MVC is a precondition for this project.

The asp.net mvc membership management contains the following functionality:

  • Dashboard
  • Browse Users
  • User -> Details
  • User -> User's Roles
  • User -> Reset Password
  • User -> Delete User
  • Browse Roles
  • Roles -> Users in Roles
  • Statistical Information
  • Statistical Information -> Registerd users past 7 days (visualization with chart.apis.google.com)
  • Statistical Information -> Registerd users past 12 months (visualization with chart.apis.google.com)
  • Statistical Information -> Not approved users past 12 months (visualization with chart.apis.google.com)

Additinal functionality will be implemented after rel. 1. Have a look at the following printscreens to get an impression what you'll get. I plan to extend this unti l its gonna be a real managment application and as more people will use it as bigger the motivation :-)

INFO: ALL UPDATES WILL BE FREE!!














Shared Cache - .Net Caching made easy

All information about Shared Cache is available here: http://www.sharedcache.com/. Its free and easy to use, we provide all sources at codeplex.

Facebook Badge