Symptoms
In Microsoft SQL Server 2005 or in Microsoft SQL Server 2008, you have a stored procedure that has a parameter whose name contains full-width underscore characters (_). You create a replication on this stored procedure. However, when you run the snapshot agent, you receive the following error message:

Error: 14151, Severity: 18, State: 1.
Replication-Replication Snapshot Subsystem: agent <AgentName> failed. The replication agent had encountered an exception.
Source: Unknown
Exception Type: Microsoft.SqlServer.Management.Smo.WrongPropertyValueException
Exception Message: The Name property cannot have a value of @param_name for this version of SQL Server.
Resolution
The snapshot agent calls the Microsoft.SqlServer.Replication.Snapshot.SmoScriptingManager.GenerateStoredProcedureArticleScripts method. This methodeventually calls the Microsoft.SqlServer.Management.Smo.ParameterBase.CheckParamName method. The CheckParamName method raises the WrongPropertyValueException exception if full-width underscore characters (_) are used in the name of the parameter.