プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。
先日、こちらのサイトでTextBoxの暗号化について質問させていただいたのですが、
現在、ObjectBlowser9のファンクションに、暗号化の
dbms_obfuscation_toolkit.desencrypt(
input_string => orgstr,
key_string => keystr,
encrypted_string => encstr
);
を作成し、VBからそのファンクションに接続しようと考えております。
ですが、
Using con As New OracleConnection(builder.ConnectionString)
con.Open()
 Using cmd As New OracleCommand
With cmd
.Connection = con
.CommandType = CommandType.StoredProcedure
.CommandText = "CON_PASS_ANGO"
.Parameters.Add("keystr", OracleType.VarChar).Value = keystr
.Parameters.Add("orgstr", OracleType.VarChar).Value = orgstr
.Parameters.Add("encstr", OracleType.VarChar).Direction = _ ParameterDirection.ReturnValue
.ExecuteNonQuery()
MessageBox.Show(String.Format("{0}X{1}={2}", _
   keystr, orgstr, .Parameters("encstr").Value))
End With
End Using
End Using
と記述したところ、
.Parameters.Add("encstr", OracleType.VarChar).Direction
のところで、
パラメータ 'encstr': 可変長データ型 : String のサイズが設定されていません。というエラーが出てしまいます。
エラーの意味も調べたのですがいまいち理解できず、停滞しているところです。どなたか解決策をご提示願えないでしょうか、
よろしくお願いします。

A 回答 (1件)

.Parameters.Add("encstr", OracleType.VarChar).Direction



Dim my_string as string = "encstr"
.Parameters.Add(my_string, OracleType.VarChar, my_string.length).Direction

にすればよいのではないでしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!