Ohne einen spezifischen Fehler, der auftritt, ist es schwierig, eine spezifische Antwort zu geben. Der von Ihnen gepostete Code könnte richtig sein. Ich sehe nichts, was in allen Szenarien falsch ist. Hier sind jedoch ein paar Orte, an denen ich anfangen würde zu suchen.
Ist Ihre Befehlsanweisung richtig formatiert? Akzeptieren alle VarChar-Parameter 1024 Zeichen? Geht einer Ihrer Strings in eine VarChar-Spalte, die länger als 1024 ist? Ist der returnStatus-Typ von Int16 korrekt?
Wie auch immer, das sind einige Punkte, an denen Sie anfangen können. Wenn Sie detailliertere Informationen zu dem Problem veröffentlichen, erhalten Sie möglicherweise weitere Antworten.