Bill Baer /bɛːr/

Skip to main content

Banner

 
Bill Baer /bɛːr/
Bill Baer is a Senior Product Manager for Microsoft 365 at Microsoft in Redmond, Washington.

Code Samples

Code Samples

Using a Flic Smart Button as a PowerPoint Remote

When speaking at conferences, you usually spend a lot of time time asking the organizer questions like “what inputs will you have, will there be a digital switcher, etc.”. This usually leads to carrying an array of adapters to be sure you’re prepared for those circumstances where there’s just VGA at the podium when you need micro/mini HDMI, DVI, USB to RJ45, and more… One of the most common requirements is something to control your presentation.

FileChecker Migration Assessment Sample Available for SharePoint Online and OneDrive for Business

Know before you go… If you’re considering migrating file shares or other file-centric containers to OneDrive for Business or SharePoint Online it’s useful to understand if the source files are supported for storage or synchronization. This code sample at https://github.com/wbaer/FileChecker helps to identify illegal characters, length restrictions, and more in one or more file names that can potentially prevent proper synchronization with Microsoft SharePoint and OneDrive for Business or fail to render through the Microsoft SharePoint or OneDrive for Business Web UX.

Quick Starting Demos and Windows PowerShell

Preparing virtual machines for demonstrations can be a tedious process, compounding this is when virtual machines need to be started or shut down in a specific order. For example, starting database servers prior to starting web servers, or starting the preferred active node before the passive node. Starting those machines; however, is only a portion of the process, in most cases you will want them to be “available” before starting a subsequent machine.

Yammer Redirection in SharePoint Server 2013 Service Pack 1

In previous articles I discussed redirecting OneDrive for Business to Office 365 in SharePoint Server 2013 Service Pack 1. In addition to new functionality that allows IT administrators to redirect OneDrive for Business and Sites pages to Office 365, Service Pack 1 also allows IT administrators to activate Yammer as the default social experience for SharePoint Server 2013. When activated, the Newsfeed link in the navigation bar is replaced with a Yammer link that directs users to the organizations’ Yammer network.

Code Samples, Simple Translation using CSOM, REST, and Machine Translation Services

Machine Translation Services is a powerful Shared Service Application in SharePoint Server 2013 that provides automation synchronous and asynchronous translation of documents, folders, and sites. The code samples in this post provide simple examples of synchronous document translation using the Client Side Object Model in managed (C#) applications and Windows PowerShell in addition to accessing Machine Translation Services via REST. CSOM The Client Side Object Model (CSOM) provides a rich alternative to earlier Web Services in providing an object-oriented system for interoperating with SharePoint data from a remote (client) machine.

File and Folder Considerations with OneDrive for Business [UPDATED 12/10/2014]

Updated 8/12/2014 – Removed & as an illegal character. & character is now supported with OneDrive for Business sync client and Web UX. Updated 8/22/2014 – Updated to include prohibited types per http://office.microsoft.com/en-us/office365-sharepoint-online-small-business-help/types-of-files-that-cannot-be-added-to-a-list-or-library-HA101907868.aspx. Updated 8/23/2014 – Updated to include optional UI-based scanning (FileCheckerUI.exe). Updated 8/31/2014 – Updated FileChecker.exe (integrated desktop and command line application). Updated 12/10/2014 – Updated to remove prohibited characters {, }, [, ], ~, and .. Updated FileChecker.

Quick Starting Demos with Windows PowerShell

Preparing virtual machines for demonstrations can be a tedious process, compounding this is when virtual machines need to be started or shut down in a specific order. For example, starting database servers prior to starting web servers, or starting the preferred active node before the passive node. Starting those machines; however, is only a portion of the process, in most cases you will want them to be “available” before starting a subsequent machine.

Introduction to System Status Notifications in SharePoint 2013

SharePoint 2013 implements new System Status Notifications designed to provide site users information about lifecycle events to include availability of upgrade, maintenance, and read-only states. System Status Notifications present important information about a SharePoint deployment and its availability, whether during upgrades, routine maintenance, or conversion to read-only. Users are kept “in the know” as they receive a prominent banner on their sites that provides insight into the activity being performed—helping reduce calls to the help desk and subsequent burden on IT.

SharePoint Site Recycle Bin for SharePoint 2010

The SharePoint Site Recycle Bin for SharePoint 2010 is available for download at http://governance.codeplex.com. The SharePoint Site Recycle Bin is a SharePoint Foundation 2010 solution package that when deployed to a Microsoft SharePoint Foundation 2010 or Microsoft SharePoint Server 2010 server farm enables administrators to create a snapshot of subscriptions, site collections and Webs as they are deleted through the SharePoint user interface, the SharePoint Administration Tool, the SharePoint 2010 Management Shell, SharePoint 2010 Central Administration, or SharePoint Designer.

Welcome to the Developer Dashboard

About the Developer Dashboard The Developer Dashboard is an instrumentation framework new to Microsoft SharePoint Foundation and Server 2010 that can help diagnose particularly, classes of bugs that are easy to introduce through custom code, but often difficult to isolate by providing information about the request execution time, the number and callstack of each SPRequest allocation, the number, callstack, and query text of WCF calls and more. The Developer Dashboard appears in a frame on the bottom of each page and can exist in one of three (3) possible modes – On, Off, OnDemand.

PowerShell and SharePoint Automation Examples Part 3

Automating your Microsoft SharePoint Products and Technologies installations can provide both consistency and efficiency while reducing the potential for human error. This is the third post on the subject of leveraging PowerShell to provide configuration logic for your environment(s). In this example we cover the configuration of Diagnostic Logging through PowerShell and a source Xml manifest. For previous examples see http://blogs.technet.com/wbaer/archive/tags/Powershell/default.aspx. Instructions Copy the source below into somefile.ps1. Copy the Xml source in DiagnosticsLogging.

Developing SharePoint Applications

Do you have questions or are you looking for best practices on integrating line of business applications with Microsoft SharePoint Products and Technologies, taking advantage of publishing and content oriented capabilities, or creating collaborative interactions around business processes? If you answered yes to any of these questions, I’d recommend reading the just published content, Developing SharePoint Applications, in the Patterns and Practices Developer Center. This guidance will help developers and architects accelerate construction of advanced applications through both examples and documentation, ensures alignment with recommendations and best practices and compliments existing platform documentation.

Quota Templates and Powershell

Continuing the series using Powershell and Microsoft SharePoint Products and Technologies, this weeks script sample illustrates how Powershell can be leveraged to programmatically provision Quota Templates in Windows SharePoint Services 3.0 and/or Microsoft Office SharePoint Server 2007. Instructions Copy the source below into somefile.ps1. Copy the Xml source in QuotaTemplates.xml. In the Windows Powershell console call ./somefile.ps1 Source #——————————————————————————-

Function: main

Description: Main entry point for the script. Loads the configuration source

Alternate Access Mappings and Windows Powershell

I had a request this week on how to leverage Windows Powershell to add Alternate Access Mappings to the collection for a specific Web application. Surprisingly after some searching I was unable to find anything existing on the topic, so for those curious see the attached script and corresponding source Xml. Instructions Copy the source below into somefile.ps1. Copy the Xml source in AAM.xml. In the Windows Powershell console call .

HTTP to HTTPS Redirection with SharePoint Products and Technologies

I’ve received several requests in regards to redirecting HTTP to HTTPS. In this post I will briefly cover a select number methods and/or technologies that can be used to accomplish HTTP to HTTPS redirection. ISA 2006 Modify the Web Listener connection properties to enable HTTP to HTTPS redirection (see below). Open Web Listener Properties on the Published Site. Select the Connections Tab. Select Redirect all Traffic from HTTP to HTTPS under HTTP to HTTPS Redirection.

Developer News, SPDisposeCheck Released and Updated Developer Guidance

Today we announced the availability of SPDisposeCheck and updated the guidance [Using Disposable Windows SharePoint Services Objects]. The published guidance provides best practices to follow when using Windows SharePoint Services objects to avoid retaining the objects in memory in the Microsoft .NET Framework, SPDisposeCheck facilitates a programmatic method to enable developers to efficiently adhere to that guidance throughout the development lifecycle. Learn more and download SPDisposeCheck

Developing Web Parts, considerations on Microsoft SharePoint Products and Technologies

Background Information Web Parts as defined by MSDN are an integrated set of controls for creating Web sites that enable end-users to modify the content, appearance, and behavior of Web pages in a browser. In Windows SharePoint Services 3.0 Web Parts ultimately derive from the ASP.WebPart (System.Web.UI.WebControls.WebParts) base class; however, Windows SharePoint Services 3.0 also has a Web Part base class (Microsoft.SharePoint.WebPartPages.WebPart) derived from the ASP.WebPart class. If you are developing Web Parts you can elect to derive from either the Asp.

Master Page Example

I used the sample master pages at http://office.microsoft.com/en-us/sharepointdesigner/HA102223711033.aspx in several Feature Stapling/Receiver demonstrations over the past year and was asked if I could provide the solution package I compiled using the Clarity master page (see image) in conjunction with a Feature Receiver to update the master page on both site collections and Webs. I’ve finally gotten around to uploading the .wsp, so for those interested it can be downloaded here.

Microsoft IT Site Delete Capture LE Version 1.0 Released

Microsoft IT Site Delete Capture LE version 1.0 has been released. Microsoft Site Delete Capture LE version 1.0 is an Windows SharePoint Services 3.0 solution package that when deployed to a Windows SharePoint Services 3.0 or Microsoft Office SharePoint Server 2007 server farm enables administrators to create a snapshot of site collections and Webs when they are deleted through the SharePoint user interface, the SharePoint Administration Tool, or Microsoft Office SharePoint Designer 2007.

Migrating User Accounts in Windows SharePoint Services

While attending Ask the Experts at the Microsoft Office SharePoint Server Conference 2008, I was asked about migrating user accounts in Windows SharePoint Services 3.0 to a new login name programmatically, fortunately Windows SharePoint Services addressed user account migrations with the Windows SharePoint Services 2.0 post SP1 hotfix package 896593 which was followed by a number of applications including SPUserUtil Keith Richie corrected me today - SPUserUtil preceeded the MigrateUser API - Thanks Keith!

Deploying ProClarity Viewer 6.3 for SharePoint

I was recently asked to deploy the ProClarity Viewer 6.3 for SharePoint Web Part - after downloading the package I realized that it was not offered in a deployable package, but rather a compressed archive of the .dwp, assembly, and resource files. The challenge became offering a user experience similar to the previous ProClarity Viewer version so I decided to package the Web Part into a reusable solution. For those interested or looking to create a deployable Web Part package I’ve documented the steps below:

Ghosts in the Machine?

Ghosted and unghosted pages are references not new to Microsoft Office SharePoint Server 2007, but have received increased interest as a result of their impact on upgrading from previous versions and more recently, the ability to manage pages in an unghosted state. Introduction Ghosted is the preferred state of pages in a site collection, ghosted pages refer to site definition files cached in memory on the server at process startup of IIS.

Programmatically Modifying Portal Site Connection Properties

I recently received a request asking 1) if a site collections portal site connection can be programmatically replaced or modified and 2) can this be accomplished on a schedule without implementing a provisioning intercept or callback based on Site Directory metadata. First let’s examine the first question: Can a site collections portal site connection be programmatically replaced or modified…the simple answer is yes. Using the Sites property of the Microsoft.SharePoint.Administration.WebApplication class to return a SPSiteCollection object representing a collection of site collections on a Web application.

GotDotNet Tools Republished to CodePlex

Working with Joel Oleson we’ve republished many of the tools commonly available through GotDotNet to CodePlex including the SharePoint Portal Server 2003 Recycle Bin, WSS Split, SP Reports, and the SharePoint Portal Server 2003 People Picker. Happy downloading! Read more here http://blogs.msdn.com/joelo/archive/2007/06/27/ms-it-sharepoint-gotdotnet-tools-republished.aspx.

I'm pleased to announce the availability of Microsoft IT Team Site Life Cycle Management Beta 1.0 for SharePoint Products and Technologies.

I’m pleased to announce the availability of Microsoft IT Team Site Life Cycle Management (MSIT TSLCM) Beta 1.0 for SharePoint Products and Technologies. Microsoft IT Team Site Life Cycle Management is a custom solution that provides lifecycle management for Windows SharePoint Services site collections and webs through write locking, backing up and recovering site collections/webs and is based on the out-of-box Site Usage and Confirmation feature. Microsoft IT Team Site Life Cycle Management Beta 1.

Understanding and Handling Microsoft IT Site Delete Capture 1.0 Archives

Since the initial release of the Microsoft IT Site Delete Capture 1.0 Feature, one of the most commonly reported issues has been the inability to restore a site archive generated by the application. The Microsoft IT Site Delete Capture 1.0 Feature uses basic STSADM principals to both backup and restore site collections and sites; however, generates its archives using one unified file extension (.BAK) for both operations as opposed to manifest files commonly associated with site export operations and single file associated with site collection backups.

Availability of the Microsoft IT Site Delete Capture 1.0 Feature for SharePoint Products and Technologies

I’m pleased to announce the availability of the Microsoft IT Site Delete Capture 1.0 feature for SharePoint Products and Technologies. The Microsoft IT Site Delete Capture feature 1.0 is a shared component library (DLL); by registering the Microsoft IT Site Delete Capture feature 1.0 shared component library in the Global assembly cache, SharePoint Products and Technologies administrators can intercept both site/web delete requests and archive the site/web to a resource local to the web front-end computer or UNC path before the site/web is removed the configuration and content databases.

Code Snippet - How to Locate Host Header-based Site Collections in Windows SharePoint Services 3.0

One of the great features in Windows SharePoint Services 3.0 is the ability to co-host both path-based and host header-based site collections within the same server farm and content databases. Now that you’ve introduced host header-based site collections to your server farm, how do you quickly identify those site collections within a server farm or content database that also hosts your path-based site collections? In this scenario the object model is extremely useful in reporting on those site collections, the Web application, and content database where they reside.

Understanding Solution Packages in Microsoft Office SharePoint Server 2007/Windows SharePoint Services 3.0

Understanding Solution Packages Solution packages are designed to provide the ability to develop and deploy reusable site and feature definitions, web part files, templates, assemblies, and code access security policies across one or more server farms. A solution package is a cabinet file that can contain, site and feature definitions, web part files, templates, assemblies, and code access security policies. A solution package contains a web manifest that that defines the list of features, site definitions, resource files, Web Part files, and assemblies to process when the solution is deployed.

Understanding webtemp*.xml

In Microsoft Office SharePoint Server 2007/Windows SharePoint Services 3.0 webtemp*.xml contains a set of <Template> elements within a <Template> element that contain a set of site definitions available in the Template Selection user interface and define how to instantiate a Web site. elements where the <Configuration> element does not contain a <ProvisionAssembly> (Example 3) attribute indicate the <Template> element applies to a single site definition and not a portal site definition.

New Excel Services Articles and Code Samples

Two (2) new articles have been published centered on Excel Services programmability with accompanying sample solutions available in the Microsoft Download Center. The first article demonstrates how to extend List and query tables on Excel Services and includes content detailing external workbook references, SQL write-back and user-defined functions. The second article provides a more in-depth approach to developing UDF’s for Excel Services. Article: Extending the Excel Services Programmability Framework Accompanying Solution:

Release SharePoint Software Development Kits are available from the Microsoft Download Center

Release versions of the Microsoft Office SharePoint Server 2007 and Windows SharePoint Services 3.0 SharePoint Software Development Kits are available from the Microsoft Download Center! Download the Microsoft Office SharePoint Server 2007 and ECM Starter Kit for Microsoft Office SharePoint Server 2007 and Enterprise Content Management development; this download is intended for MOSS developers, if you are interested in developing on Windows SharePoint Services 3.0, keep reading… Contents: SharePoint Server 2007 SDK Documentation

MOSS 2007 & WSS 3.0 RTM Software Development Kits

The Windows SharePoint Services 3.0 RTM Software Development Kit have been released to MSDN; for those looking for the Microsoft Office SharePoint Server 2007 Software Development Kit click here, each includes documentation, as well as code examples within the topics and contains the highest-priority documentation for developing on each platform. I’d be interested to hear what others are developing and how the information contained in the SDK’s contributed to that project.

Simple Query to Audit Site Collection/Web Access Levels

USE SELECT DISTINCT t1.siteID,t2.webID, t2.title [accessLevel],t3.tp_login,CONVERT(DECIMAL(6,2),((CONVERT(DECIMAL,t4.diskUsed)/1024)/1024)) [diskUsed MB], t6.fullUrlFROM DBO.RoleAssignment t1 JOIN DBO.roles t2 ON t2.siteID = t1.siteID AND t2.roleID = t1.roleID AND t2.roleID = 1073741829 JOIN DBO.userInfo t3 ON t3.tp_siteID = t1.siteID AND t3.tp_id = t1.principalID JOIN DBO.sites t4 ON t4.[id] = t1.siteID JOIN DBO.perms t5 ON t5.siteID = t1.siteID AND t5.scopeID = t1.scopeID JOIN webs t6 ON t6.[id] = t5.webID

SQL Scripting for Manageability

The attached SQL scripts are intended as sample scripts and may require some modification to suit your individual environments; however, serve as a foundation and guidance in SQL scripting under Windows SharePoint Services 3.0. Retrieve active Content Databases from a WSS 3.0 Configuration Database Returns a list of all active Content Databases in the Windows SharePoint Services Configuration Database. USE <WSS_3.0_Configuration_Database> SELECT DISTINCT SiteMap.DatabaseId, Objects.Name FROM SiteMap INNER JOIN Objects

SharePoint Community Search by Lawrence Liu

Lawrence Liu recently posted his Live Search macro enabling a consolidated search against the SharePoint Community; to add to that capacity I’ve put together a small bookmarklet that will enable you to run this search from your browser without having to navigate away from your current page. **Download **https://wbaer.officeisp.net/Shared%20Documents/SharePoint_Community_Search_Bookmarklet.zip

Recycle Bin for SharePoint Products and Technologies 2003 (WSS/SPS 2003) 1.2 (Build 29) Released!

Recycle Bin 1.2 (Build 29) has been released; this release addresses several issues reported in build 26, released in July. Currently this build is offered as independent libraries and will soon have an accompanying Windows Insaller Package. To install this build, stop the World Wide Web Publishing Service (NET STOP W3SVC), replace ReycleBinISAPI.dll and RecycleBinISAPIFilter.dll with build 29 and start the World Wide Web Publishing Service (NET START W3SVC). Download Recycle Bin 1.

Recycle Bin for SharePoint Products and Technologies 2003 (WSS/SPS 2003) 1.2 (Build 26) Released!

I’ve published Recycle Bin 1.2 (Build 26) to SharePoint Tools GotDotNet Workspace, this build addresses two long-standing bugs: Fixes Explorer View bug: Unable to delete An error occurred accessing your FrontPage web files. Please contact the server administrator. Fixes Empty Library archiving: Document and Picture Libraries that do not contain content will be archived in effort to mirror the directory structure of a Document/Picture Library and its’ subfolders if they exist.

Web Services, XSL and Windows SharePoint Services Content Management *UPDATED

I recently posted an article detailing how the Content Editor Web Part can be leveraged to display a menu based on the SELECT element, using hypertext markup and javascript to render hyperlinks in a manner that maximizes Windows SharePoint Services real-estate and promotes a positive user experience. Several requests and questions I received as a result of this post were whether or not the hyperlinks in the Content Editor Web Part could be harvested from a List.
Skip to footer

Social Links