Ever needed to search for a string in your stored procedures?

I was digging through an older database I am rewriting and I stumbled on this little stored procedure.  It uses the internals of SQL Server to search the stored procedures for a provided string.  Just one of those bits of code we are all meaning to write but never do.

@StringToSearch varchar(100) 
   SET @StringToSearch = '%' +@StringToSearch + '%'
   SELECT Distinct SO.Name
   FROM sysobjects SO (NOLOCK)
   INNER JOIN syscomments SC (NOLOCK) on SO.Id = SC.ID
   AND SO.Type = 'P'
   AND SC.Text LIKE @stringtosearch

I'm not even sure who wrote it but it seems like something handy to have around.

Getting the version from a ClickOnce published application

Do you get the requirement to put the version in the title bar of your apps?  I do all the time.  With the advent of ClickOnce, though, most apps have TWO version numbers, the Assembly Version, and the Publish Version.  If you go by the Publish Version (you aren't alone) you can get the Version number using the System.Deployment.Application namespace.  Make sure you import it first, and reference it too.

If ApplicationDeployment.IsNetworkDeployed Then
  Me.Text = String.Format("{0}, Version {1}", Me.Text, ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString)
  Me.Text = String.Format("{0}, Version {1}.{2}.{3}.{4}", Me.Text, My.Application.Info.Version.Major.ToString, My.Application.Info.Version.Minor.ToString, My.Application.Info.Version.Build.ToString, My.Application.Info.Version.Revision.ToString)
End If 

Bill Sempf

Husband. Father. Pentester. Secure software composer. Brewer. Lockpicker. Ninja. Insurrectionist. Lumberjack. All words that have been used to describe me recently. I help people write more secure software.

profile for Bill Sempf on Stack Exchange, a network of free, community-driven Q&A sites