Issue
When copying files to the GAC I occasionaly get the following message in the Visual Studio OutPut window on my development VPC:
Failure adding assembly to the cache: Access denied. You might not have administrative credentials to perform this task. Contact your system administrator for assistance.
Also I cannot see any assemblies in the GAC through Windows Explorer, while it is this state.

Background
When developing features for SharePoint, it is common practice to deploy only the Signed Assembly to the GAC, rather that re-deploying the whole SharePoint solution. Personally depending on the project I use one of two mechanisms:
WSPBuilder – Copy to GAC
WSPBuilder is my tool of choice for increasing productivity while developing SharePoint Solutions. One of the functions of WSPBuilder is Copy to GAC, which does exactly as the name suggest:

PostBuild Task
Some clients don’t allow WSPBuilder to be installed or they prefer a more custom project structure. In these cases I tend to use Project Post Build Tasks. You can use the Edit Post Build… function to add parameters to your post build command, as shown below. I tend to use the GACUtil command to copy the assembly to the GAC and the iisapp.vbs to recycle the application pool. A sample script is show below. This is required to ensure that the Just In Time (JIT) compilation occurs again.


"%programfiles%\Microsoft Visual Studio 8\SDK\v2.0\Bin\GacUtil.exe" /if "$(TargetPath)" /nologo
"%systemroot%\system32\iisapp.vbs" /a "SharePoint – 9000" /r
Resolution
Although I cannot actually explain what is causing this issue, I found that if you restart the Indexing Service through the Windows Services Management Console, the problem is resolved.
If anyone has an explanation as to why this occurs I would be grateful.

If like me you’ve recently updated to Windows 7 (which generally I find a real improvement over Vista) you may have difficulties downloading products from the MSDN site using the Microsoft MSDN File Transfer Manager (TFM). Now I have to be honest I’m not sure if this is an issue with Windows 7 or Internet Explorer 8 (IE8). My gut feeling is it is a issue with IE8. Either way if you are having issues downloading files from the MSDN download site, then you need to manually download and install it from:
Microsoft MSDN File Transfer Manager
Also if your Corporate Group Policy requires you to have Administrative privileges to install ActiveX controls then you can use the above link to download and install.
There is an alternative download manager from Akamai, for those not using Internet Explorer or FireFox on Windows:
Akamai Download Manager.
Note: FTM is implemented as an ActiveX control and is a 32-bit application, so you may need to run your 64-bit browser in 32-bit mode.
More information can be found on the File Transfer Manager Help pages.
If you are experiencing the following symptoms:
Unable to enter text into text boxes;
The About box fields indicating the browser version and patch level, are blank ;

Unable to right-click on pages;
Unable to select text in a HTML document or a Web page;
When you open the About box, the following error occurs and the dialog closes;
You need to either reinstall Internet Explorer or run the following commands:
REGSVR32 MSHTMLED.DLL
REGSVR32 JSCRIPT.DLL
REGSVR32 /i MSHTML.DLL
While assisting a client in moving content from one environment to another for testing purposes, it was noticed that the site of the stsadm backup file was considerably larger than the Content Database size as defined in the stsadm enumsites report.
As can be seen in the from the out put of the enumsites, the StorageUsedMB for the HRTemp site collection is reported to be 158.4 MB. However the size of the backup file is 3.1 GB.
<Sites Count="5"> <Site Url=http://portal Owner="domain\spadmin" ContentDatabase="WSS_Content"StorageUsedMB="1.7" StorageWarningMB="0" StorageMaxMB="0" /> <Site Url="http://portal/teamsite/hr" Owner="domain\spadmin" ContentDatabase="WSS_Content_HR2" StorageUsedMB="3171.1" StorageWarningMB="0" StorageMaxMB="0" /> <Site Url="http://portal/teamsite/HRTemp" Owner="domain\spadmin" ContentDatabase="WSS_Content_Temp" StorageUsedMB="158.4" StorageWarningMB="0" StorageMaxMB="0" /> <Site Url="http://portal/teamsite/it" Owner="domain\spadmin" ContentDatabase="WSS_Content_IT" StorageUsedMB="8840.7" StorageWarningMB="0" StorageMaxMB="0" /> <Site Url="http://portal/teamsite/research" Owner="domain\spadmin" ContentDatabase="WSS_Content_Research" StorageUsedMB="14.5" StorageWarningMB="0" StorageMaxMB="0" /></Sites>
I asked if they had deleted any files and if so had they deleted the files from the recycle bin. They said that they had deleted files and removed them from the recycle bin. As it transpires they had removed the files from the users recycle bin and not the site collection recycle bin.

Once the files were removed from the site collection recycle bin the backup file was reduced to the expected size.
It is therefore important to ensure that files are deleted and removed from the recycle bin properly before executing a stsadm backup as files in the recycle bin for the site collection will also be backed up and this will not be reflected in the enumsites report.
Note: You can disable the recycle bin thus purging the recycle bin using the setproperty method of the stsadm command. Beware that this property is for the Web Application and not the site collection, and will as a result empty (delete) the recycle bins for all site collections in the web application. This is OK for testing purposes, but not recommended in production environments.
If you are using a VPC with no network connectivity, (i.e. your LAN or Wireless network is not available to the VPC) and you try to save a document to a SharePoint Document library you get the following error message
“This file cannot be saved to this location because there is no connection to the server. Check your network connection and try again.”

This issue is cause System Event Notification Service.
Purpose
Applications designed for use by mobile users require a unique set of connectivity functions and notifications. In the past these individual applications were required to implement these features internally. The System Event Notification Service (SENS) now provides these capabilities in the operating system, creating a uniform connectivity and notification interface for applications. Using SENS developers can determine connection bandwidth and latency information from within their application and optimize the application’s operation based on those conditions.
Where Applicable
The connectivity functions and notifications of SENS are useful for applications written for mobile computers or computers connected to high latency local area networks.
Solution
Office applications use the System Event Notification Service to ensure that the required connection is available during the save process. As the service determines that there is no network connection available it causes the save to fail. To prevent this you need to stop this service. The easiest way to do this is to use the following command:
net stop sens
To restart the service issue the following command:
net start sens
Note: The service is set to start automatically by default in Windows, so you will get the error again after a reboot of the VPC. To prevent this you can set the service to start manually:

Every SharePoint Developer should have SPDisposeCheck Tool in there arsnel! This tool, developed by the guys on the SharePoint Team will intergoate your compiled .dll’s to ensure that you are correctly disposing of SharePoint objects, primarily SPSite and SPWeb. Why do we need to dispose of SharePoint object, well from the horses mouth as such :
“Several of the Windows SharePoint Services objects, primarily the SPSite class and SPWeb class objects, are created as managed objects. However, these objects use unmanaged code and memory to perform the majority of their work. The managed part of the object is much smaller than the unmanaged part. Because the smaller managed part does not put memory pressure on the garbage collector, the garbage collector does not release the object from memory in a timely manner. The object’s use of a large amount of unmanaged memory can cause some of the unusual behaviors described earlier. Calling applications that work with IDisposable objects in Windows SharePoint Services must dispose of the objects when the applications finish using them. You should not rely on the garbage collector to release them from memory automatically.”
Roger Lamb has an excellent blog article - SharePoint 2007 and WSS 3.0 Dispose Patterns by Example
Add SPDisposeCheck to Visual Studio
Visual Studio IDE allows you to add External Tools such as SPDisposeCheck. The follow steps explain how:
1. In Visual Studio select Tools | External Tools
2. Add the following settings:
Title: SPDisposeCheck
Command: C:\Program Files\Microsoft\SharePoint Dispose Check\SPDisposeCheck.exe
Arguements: $(TargetName)$(TargetExt)
Initial Directory: $(TargetDir)
Use Output Window: Checked

SP Dispose Check External Tools
Reference
Introduction to Using Disposable Windows SharePoint Services Objects