Welcome to CedarLogic, LLC - Shawn Cicoria Sign in | Join | Help

Shawn Cicoria - CedarLogic

Perspectives and Observations on Technology

News





  • Unity08.com
All this technology - where do I start!

One this is for sure, there's plenty of materials on getting ramped on the Microsoft stack.

We now have up on the MSDN Ramp Up center tracks for SharePoint...

Check it out:

http://msdn.microsoft.com/en-us/rampup/default.aspx

www.MyRampUp.com

Installing WCF CTP Extensions with VS 2005 after .NET 3.0 service packs....

If you're installing Visual Studio 2005 and need the WCF CTP Extensions, BUT you've already installed .NET 3.0 with service packs, the installer fails.

To override the check use the following:

msiexec /i vsextwfx.msi WRC_INSTALLED_OVERRIDE=1

Daily PDC Newsletter...

Biff Gaut is continuing his tradition of mixing humor with some good technical content as he attends the PDC.  Over the past several PDC's, Biff has always been able to sprinkle his dry sense of humor into the mix of his daily reports on what he sees.

Check it out here:

http://www.biffspdcnewsletter.com/

Creating a WSS / MOSS Command Prompt on the Desktop

UPDATED: 8/6/2008 - Minor issue on Path

I've built quite a few WSS / MOSS machines and one task that I always seem to do is create a simple CMD shell prompt on the desktop (quick launch, etc.) that gives me easy access to STSADM and has the path set correctly.  So in the interest of saving time I've created a simple VBScript file located here as well as the full listing below

wsscmd 

Set Shell = CreateObject("WScript.Shell")
Set Env = Shell.Environment("PROCESS")
DesktopPath = Shell.SpecialFolders("Desktop")
Set link = Shell.CreateShortcut(DesktopPath & "\WSS CMD.lnk")

cssHive = Env("CommonProgramFiles") & "\Microsoft Shared\web server extensions\12"
currentPath = RTrim(Replace(WScript.ScriptFullName, WScript.ScriptName, ""))
envBatFile = "setWssPath.cmd"

CreateBatFile currentPath & setWssPath & envBatFile, cssHive

link.Arguments = "/k " & " " & Chr(34) & currentPath & envBatFile & Chr(34)link.Description = "WSS Command Prompt"
link.HotKey = "CTRL+SHIFT+W"
link.IconLocation = "%SystemRoot%\system32\SHELL32.dll,94"
link.TargetPath = "%comspec%"
link.WindowStyle = 1
link.WorkingDirectory = cssHive
link.Save

Sub CreateBatFile(fileName, cssHive)
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set file = fso.CreateTextFile(fileName, True)
    file.WriteLine("@SET PATH=%PATH%;" & cssHive & "\bin")
    file.WriteLine("@ECHO WSS CMD Shell - Shawn Cicoria")

End Sub

Using Virtual.Server COM interfaces on an x64 Machine and Visual Studio

Recently, I messed up a set of VHD files that were based upon differencing disks.  Basically, I killed the parent drive - so, any child drives are useless.

So, how do you know which drives are differencing disks and what is their parent?

One way is through the COM interfaces (that call into an out-of-process server).  Virtual Server must be installed and the service running for these interfaces to work.

However, on an X64 machine you won't be able, in Visual Studio 2005 or Visual Studio 2008 see the Typelib registered via the Add Reference -> COM tab.  Why? Because Visual Studio is 32 bit and the COM registration on x64 machines is not visible via the WOW64 Registry redirection.

So, a simple fix is to create (copy) the same sub key for win32.  A merge of the following will then allow you to set a reference and call into the interfaces

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\TypeLib\{D7526A6D-CF83-48A4-87FD-4FBE2AEC5D93}\1.1\0\win32]
@="C:\\Program Files\\Microsoft Virtual Server\\vssrvc.exe"

What you then need to do is ensure you follow the steps in the MSDN article below to ensure proper COM initialization and setting of the apartment model to MTA instead of STA which is the default attribute applied via the VS templates.

Connecting to the Virtual Server COM Object

Well, already messed up National Shutdown Day...

I had heard on the radio a short blurb about "National Shutdown Day" being Saturday May 3rd (today).  Only problem is I didn't hear about what we were shutting down.  I had initially thought it was something like "National Lights Out day" (which I also missed).

So, today, I light up my computer and do a Live search on what it's all about.  Well, I blew it.  It's about turning off your computer for 1 day - as I'm reading that on my turned on computer (haven't figure out how to use it w/ out the power on) and typing this and also checking weather, some blogs, and my calendar. 

http://www.shutdownday.org/

Search Jacking (DNS too) opens users to vulnerabilities

A while back I blogged about how Verizon was Hijacking failed DNS lookups.  What I failed to realize at the time was not only is this adding to a poor experience by users but opens up the ability for ISP's to obtain private information, in the form of cookies for many sites.

For example, cookies for "google.com" are issued to the "google.com" domain.  If I type in "junk.google.com" and that is not an actual host serviced by google.com, the DNS for google will return a not found for that name resolution.  Verizon in turn captures that and then presents some other page, making my browser think it's a valid address and as a result offer up all the cookies I have for google.com to this phony website.

BIG HOLE.  This is a form of forgery of you ask me and soon, I expect, we'll see some exploit that opens up liability to these hijackers along with making users again feel so uncomfortable about the safety of the web.

ISP typo pimping exposes users to fraudulent web pages | The Register

Windows Vista Services Explained

Here's a nice site that helps us Vista folk out on identifying which services are really needed, can be delayed start, or even disabled.  General Service information too.

While I Hibernate most of the time (shutdown -h) there are those times I need to reboot.  Anything to save a few...

Windows Vista Services Explained

Learning LINQ - No excuses

There are really a whole bunch of great resources out there that help the community get up & running with LINQ.

Personally, with all the additional providers that I've seen (Qak Leaf List) - several of which I see great use for - LINQ to SharePoint and LINQ to LDAP / LINQ for AD.

In regards to tools, LINQ Pad is the tool that allows you to toil with the syntax, etc.

LINQ Pad

And now, here's a good 100+ pages on LINQ syntax in C# 3.0.

Book Preview: C# Query Expressions and Supporting Features in C# 3.0

All of this is free!!!

Visual Studio Gallery

Here's something that I just came across, perhaps I just wasn't looking.

It's in Beta but it's ultimately a 3rd party library of add-ins, etc. for Visual Studio. 

No search, but you can sort on the columns in the categories.  Search is there, down to the category, but I'd also like to search by some attributes (such as free :) )

Visual Studio Gallery

Prototype, Proof of Concept, Pilot, and Production - What's the Difference?

Before going full blown production with a Solution, there are times that you want to validate technical, functional, acceptance, or even general interest in a solution.

I find it helpful to clarify what the terms imply and what the primary focus is of each along with what impact on overall delivery risk it may have.

Overall, the ideal path to follow that helps mitigate risk, refine scope, and provide greater confidence in planning is:

PoC --> Prototype --> Pilot --> Production

This also helps both the delivery team and the customer make tollgate decisions as the project progresses.

Proof of Concept (Poc)

A prototype generally should be done early in the development cycle. It is used to validate technical feasibility, helps identify potential stumbling blocks, identifies what a platform can or can't provide, helps determine the scope and level of customization necessary to complete the project.

The prototype can also help identify performance issues.  Generally, today, we assemble many of our applications / solutions in a "composite" fashion.  We're re-using services, functions, etc. from other applications.  This re-use requires integration points.  It's these integration points in our overall "context" that we're vetting with the prototype effort.  While also validating assumptions regarding what the platform or framework can or can't provide.

The outcome is a technical feasibility confidence factor along with factors that impact overall scope and estimate of effort.

Prototype

A prototype, sometimes called "Proof of Concept Prototype" generally provides a more "complete" implementation allowing further examination on the feasibility of the solution, in my mind, from a functional perspective as it is "layered" on the technical solution.  Hopefully, we've tactically created Skeletal PoCs to validate our technical approaches on key parts of our technical solution.

This is where the terms become juxtaposed.  I've heard the inverse sometimes.

However, neither a PoC nor a Prototype should be considered production quality.  These are solely for early determination of the feasibility of the technical or business solution.

Pilot

A Pilot is intended to be production quality - albeit on a smaller scale.  Hopefully, we've completed any PoC and Prototypes to validate our approach, minimize risk, and help determine scope and effort.

The pilot is ultimately useful in getting real user feedback.  Here, we pick-off a hopefully friendly group - if we're gun shy, that can provide constructive feedback but also help mitigate risk.  Doesn't need to be a friendly group, if you're looking for the fire, a more critical group could be the target, however, it may have a negative impact on the next tollgate decision on whether or not to proceed to full build-out and full production.

Extract DDL and Data - SQL Server Database Publishing Wizard

Here's a tool that completely slipped by me.  I've been using ApexSQL for generation of SQL scripts for creating schema and data.

Turns out, during the Visual Studio 2008 installation I see "SQL Publishing Wizard" pop up on the list.

This tool, can extract schema and data and create a SQL script.

Download details: SQL Server Database Publishing Wizard 1.1

MSDN Code Gallery - Home

Now that GotDotNet has been mothballed and CodePlex is more project oriented, Microsoft has gotten back into the mix with Code Gallery.

This is a community site, the content is minimal for now, and quite frankly, the interface is lacking.  While there's search, there's not much meta-data associated with the uploads.

We'll see how it pans out...

MSDN Code Gallery - Home

FreeConference.com - Free Telephone Conference Call Service

For those of us that are cheap value minded, here's a service that provides conference calling, albeit using a long distance call.  But with all you can eat phone pricing we have today, who cares.

They also have a Web Desktop Sharing tool, in Beta - haven't tried it but the basic service for voice conference is great.

Some outlook integration, of which I've only used the VCS file download, but they apparently have an Outlook Add in too.

FreeConference.com - Free Telephone Conference Call Service

DirecTV HDPC-20 Dual USB Tuner Shakes Hand with Vista

Finally, I can get my DirecTV signal down to Media Center without a whole bunch of crap.

I've been waiting for DirecTV's MC compatible capability for some time, this finally looks like I can get TiVo like function well integrated with MC.

Using TiVo now, but resistant to moving to the DirecTV DVR as it's interface just plain stinks.

DirecTV HDPC-20 Dual USB Tuner Shakes Hand with Vista

More Posts Next page »