Wednesday, February 8, 2012
Best Hosting found
Cost - $10 a month you get a SharePoint environment with one administrator and 100 users.
Product - SharePoint Enterprise, not Foundation.
Security - SSL is an option you can add and they will even apply for the certs.
Storage - the $10 package comes with 5GB storage
Upgrades - If you go over your package Quota they will move you to the next package no hassles.
Support - They have been great for support, even gave one of my clients (a church) free code review.
I checked a lot of different hosting companies out there and none of them came close, so check them out before you buy hosting, I am glad I did.
BTW. if this sounds like an ad for them it's not, I get nothing for this referral other than knowing you took the time to read my blog and it might help you save some money.
Wednesday, January 11, 2012
Office 365
Thursday, March 31, 2011
Creating a Bootable VHD
In many cases you only need to create VHD files for a virtual PC, but in some cases you may need to install a 64 bit OS. I needed to do exactly that when I decided it would be the quickest and cleanest way to do SharePoint 2010 development. Now one thing you should be aware of is that if you take this approach you will need a significant amount of space for each VHD file, unless it is a differential file. For a Windows 7 or Server 2008 R2 Install, I will typically use a 100GB VHD file, so make sure you have that much space available before we begin.
Before we begin
All tasks require Admin Access to your box and there are a few items you will need before you begin the build of your VHD, first you will need the Install.wim file found on your install DVD in the Sources directory. Additionally, you should download copies of all your systems drivers and store them in a single directory for access later. Lastly you will need to download and install the Windows AIK for Windows 7 (http://www.microsoft.com/downloads/en/details.aspx?familyid=696DD665-9F76-4177-A811-39C26D3B3B34&displaylang=en)
Create the VHD
- Click Start
- Right Click on Computer and Click Manage
- Under Storage, Click Disk Management
- Once the Disk Configuration Window is refreshed, under Action click More Actions > Create VHD
- Specify the location and Name of the VHD file and set the size, then Click OK.
- Once the setup completes you will find the Image in the list of Drives as a teal coloured drive icon.
Initialize and Partition the VHD
- Right Click on the Grey area that contains the icon and choose Initialize Disk.
- Choose MBR or GPT (GPT is newer and supports partitions larger than 2TB) and click OK
- Right Click on the White area of the drive area with a black title that show a status of Unallocated, choose New Simple Volume…
- Click Next >
- Click Next >
- Choose Assign the following drive letter (remember the letter chosen) and click Next >
- Give the Drive a Volume label that makes it easy to identify, make sure quick format is chosen and click Next >
- Click Finish
- The bar on the top will turn blue and the drive will have the letter and label you gave it. If autoplay is turned on an autoplay popup will appear, close it.
- Right Click on the white area and choose Mark Partition as Active
Install the OS and Add the Drivers
- Click Start > All Programs > Microsoft Windows AIK and Right Click on Deployment Tools Command Prompt and choose Run as Administrator
- Type: imagex /info {Install.wim Path}\install.wim eg: imagex /info c:\VHD\install.wim
- In the result find the Index of the install you want to start
- Type: imagex /apply {Install.wim Path}\install.wim /check {Index Number} {VHD Drive} eg: imagex /apply c:\VHD\install.wim /check 1 g:\
- Wait for the install to complete
- Type: dism /image:{VHD Drive} /add-driver /driver:{Path to drivers} /recurse eg: dism /image:g:\ /add-driver /driver:c:\drivers /recurse
Note: You should only navigate to the top level of the drivers folder, the recurse switch tells it to search all subfolders for drivers and install them.
Change the Boot Menu
- Type: bcdedit /copy {current} /d "{Label}" eg: bcdedit /copy {current} /d "Windows 7 - VHD"
- Type: bcdedit
- Copy the CLSID property called Identifier using Mark for the entry that has the description that matches the label you entered above
- Type: bcdedit /set {CLSID} device vhd=[{Drive Letter}]{VHD Path}\{VHD Filename} eg: bcdedit /set {b751de95-e30f-11df-b2f6-85541b19d1f4} device vhd=[C:]\VHD\Windows7.vhd
- Type: bcdedit /set {CLSID} osdevice vhd=[{Drive Letter}]{VHD Path}\{VHD Filename}
- Type: bcdedit /set {CLSID} detecthal on
- Now you can reboot into the new image
Using Differential Images to keep your OS Image Pristine
If you install all the base software and perform updates to make the image current, you can then create a Differential Image, which will allow you to make changes without affecting the base image, eg. Test new software or perform development.
- Click Start > All Programs > Microsoft Windows AIK and Right Click on Deployment Tools Command Prompt and choose Run as Administrator
- Type: diskpart
- Type: create vdisk file={Drive Letter}\{VHD DIF FileName} parent={Drive Letter}\{VHD FileName} eg: create vdisk file=c:\VHD\VS2010.vhd parent=c:\VHD\windows7.vhd
- Change the boot menu to point to the new image for device and osdevice
Wednesday, February 2, 2011
'style.display' is null or not an object error

If you do, it is probably because you have copied and pasted from one content editor web part into another. If you see this error you will need to check your content for any WebPartID that is being referenced. The copy paste will copy this into the new content, breaking the content, if you remove the DIV tags that contain that reference, it will fix the page.
If you want to avoid this you should copy the text out of the original web part, paste it into a word document and then copy the word document content and paste it into the new web part, this reformats and removes the WebPartID.
Thanks to egghead cafe for the discussion that is summarized in this solution.
Wednesday, March 24, 2010
Some helpful Links for MOSS Administrators
· MOSS 2007 - Administrator Guide
· WSS 3.0 - SDK
· WSS 3.0 - Technical Library
· MOSS 2007 - Newly published content
· WSS 3.0 - Newly published content
· WSS 3.0 - SharePoint Server 2007 Developer Portal
· WSS 3.0/MOSS 2007 - Office SharePoint Server 2007 Administrator's Companion
· Complete reference of all PSCONFIG operations
Best Practices
· Before You Begin with SharePoint Server 2007
· Best Practices Analyzer for WSS 3.0 and MOSS2007
· Writing SQL Syntax Queries for Relevant Results in MOSS2007
· Backing Up and Restoring Web Sites w/ Stsadm
· MOSS 2007 - Planning and Architecture for Office SharePoint Server 2007
Search
· Configure the Office SharePoint Server Search service
· Configure Office SharePoint Server Search to crawl Lotus Notes
· Security considerations for search
· Overview: Plan search
· White paper: Evaluation guide for search in Office SharePoint Server
· Plan to deploy index and query servers
STSADM Commands
· Jose Barreto's Blog Complete reference of all STSADM operations (with parameters) in MOSS 2007 SP1
Publishing Templates
While creating an STP file from a site is easy and it makes it available within SharePoint for use, if you script any of your actions, you need to deploy your STP file globally. To do that you are going to need to download the STP file from the site Gallery and then delete it for the gallery. If you don't delete it you will have duplicate templates when we are done.
Once you have the file downloaded you will need to copy it to your web front end server. Once copied we will do the following from the command line using stsadm:
1. Check if the template already exists:
stsadm -o enumtemplates
2. If the template exists, you will need to delete the current copy:
stsadm -o deletetemplate -title {template title}
3. Now you can add the template:
stsadm -o addtemplate -filename {template filename & location} -title {template title} -description {template description}
It will prompt you that an IIS reset is needed at each of these steps, but in reality it is not required and can wait until a time that works for your environment.
The other deployment that you will need to be able to perform is a GAC deployment of an application template. This is also done on the web front end server using stsadm.
1. Add the application template to the solutions list:
stsadm.exe -o addsolution -filename {template filename & location}
2. Deploy the solution to the GAC:
stsadm.exe -o deploysolution -name {template filename} -immediate -allowgacdeployment
3. Copy the Binary Content:
stsadm -o copyappbincontent
So now you know how to deploy global site templates and applicaion template solutions.
Wednesday, March 10, 2010
My Site Link is broken!
Time to do some research, here is what I found...
Sometime when you are using Site Settings -> Delete this Site it accidentally deletes the My Site Host. Not a big deal but a pain in the butt, so here is how to fix that pain without Preparation H.
1. Go to Central Administration and click on Application Management.
2. Under SharePoint Site Management click Create Site Collection.
3. Choose your My Site Web Application and give it a title of My Site
4. Choose the My Site Root (should be there by default)
5. For Template, under the Enterprise Tab -> choose My Site Host
6. Enter in your Site Collection Administrator Account and an Alternate
7. Choose a Quota (if Applicable)
8. Click OK.
It will plug away and when completed should show you a link to your My Site. Test it out, it should now work.
Hope that helps someone out there.
Monday, March 8, 2010
My Links are Broken!
My Links is a different animal from other Links in MOSS, the actual list behaves differently and if you ever tried to find it in the SQL server you know it is stored differently as well.
To answer your first question... Where is My Links stored? It can be found in your Default SSP inside the UserLinks table, that's right I said the Default SSP.
Now the way the table is built is quite simple, you have your Id, which is the Row identifier and primary key.
The RecordId, which is actually used to identify who owns the link stored in the row. It is not the User's actual Id, but is an Id that is arbitrarily assigned to each user (Makes it tough to find things...).
The Title, which is the first peice of usable information you can use to identify what needs to be changed, this information is the Title the User entered for the name of the Link.
The GroupType identified whether the link is part of a subgroup or not (2 - No Group, 0 - is a Group Member).
The GroupTitle is the name of the Group, it is only populated when the group type is value 0.
The URL is the place we need to go to fix the link. It contains the link info.
The ContentClass and PolicyId must serve a purpose, but I am unconcerned with them right now...
Lastly is the ItemSecurity, which identifies how the user intended to share the link.
To correct a broken link you will need to find the culprit, the user usually knows what link they entered that broke it, but in some cases they may be blissfully ignorant of what they did. A few hints into what breaks my links. The link needs to be invalid, but not a broken link... That means it is valid in most situations, just not in My Links. As an example using file: requires three slashes /// not two, as some people may enter, in most situations two slashes work, but not here... So you should look for any links that are file:// and replace them with file:///.
How do you do that? First you need to run SQL Server Management Studio (for 2005 or 2008) as a user with update permissions to the database, find the link that is causing the problem using either a Script table as -> SELECT TO -> New query editor window or using Open Table. Once you have identified the problem, either delete the row or fix the problem and commit the change.
Hope that helps...
Dave
Wednesday, November 18, 2009
Doh I clicked "Remember My Password"
1. Click Start and select Run
2. In the Open field type "rundll32.exe keymgr.dll, KRShowKeyMgr"
3. Once the Stored Usernames and Passwords interface opens you can select any of the entries and select Properties to view the existing information
4. To remove a saved password you can select one of the entries and select Remove. A confirmation screen will appear. Click on OK and the account will be removed
Tuesday, September 29, 2009
Turn off New Folder option in MOSS as default
List xmlns:ows="Microsoft SharePoint" Title="$Resources:shareddocuments_Title;" FolderCreation="FALSE" Direction="$Resources:Direction;" Url="Shared Documents" BaseType="1"
The FolderCreation option, simply chooses the No folder option in the advanced settings by default, allowing you to enable it if needed.
Once the change has been made and saved, you will need to restart IIS for the change to take effect.
Hope this helps someone out there, it took me forever to find a solution and I thought I should share it.
Thursday, August 13, 2009
Expiring SharePoint Groups and Accounts in MOSS 2007
In case you ever wondered what it would take to set up expiry of Sharepoint User Accounts, here is what you need to do to make this happen:
- To start, you will need to use a site collection administrator account, then from the top level of your portal/site collection Click Site Actions -> Site Settings -> People and Groups
- Click Settings -> List Settings
- Click Create Column
- Type the name of the column, I am calling mine Expiry Date
- Choose Date and Time
- Set any other information the way you want and Click OK
You now have a column named Expiry Date - Click Information Management Policy Settings
- Click Define a Policy ... and Click OK
The Policy will be given teh name Person - Choose Enable Expiration
- Under The retention period is:
- Choose A time period based on the item's properties:
Expiry Date will be automatically chosen - Type 0 in the box before years
- Choose Perform this action:
The only choice should be Delete - Click OK
You now have User accounts being deleted based on the expiry date. If you want this to be selective, do not make it a mandatory field. The Disposition ignores blanks, so if no date is set then it will not delete it when the Expiry Date = Today.
Hope this helps someone out there.