Sem um erro específico que está ocorrendo, é difícil dar uma resposta específica. O código que você postou poderia esteja correto. Não há nada que eu veja que esteja errado em todos os cenários. No entanto, aqui estão alguns lugares que eu começaria a procurar.
Sua instrução de comando está formatada corretamente? Todos os parâmetros VarChar aceitam 1024 caracteres? Alguma de suas strings está entrando em uma coluna VarChar maior que 1024? O tipo returnStatus de Int16 está correto?
De qualquer forma, esses são alguns lugares para começar, se você postar algumas informações mais detalhadas sobre o problema, poderá obter mais respostas.