コメント |
@C:RED(※このアプリケーションを実行するユーザは、ORA_DBA グループ に所属している必要があります
※ sqlplus.exe にパスが通っている必要があります
)
@DIV
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Me.パスワード.PasswordChar = "*"
End Sub
Private Sub 実行_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles 実行.Click
@C:GREEN(' プログラムと同じ場所にコマンドファイルを作成)
Dim commandFile As String = Application.StartupPath + "\command.sql"
Dim commandWriter As StreamWriter = _
New StreamWriter(commandFile, False, System.Text.Encoding.GetEncoding("shift_jis"))
Dim commandString As String = ""
commandString += "ALTER USER " + Me.ユーザー.Text + " SYSTEM account unlock;"
commandString += ControlChars.CrLf
commandString += "ALTER USER " + Me.ユーザー.Text + " IDENTIFIED BY "
commandString += Me.パスワード.Text + ";"
commandString += ControlChars.CrLf
commandString += "EXIT"
commandString += ControlChars.CrLf
commandWriter.Write(commandString)
commandWriter.Flush()
commandWriter.Close()
Dim processInfo As ProcessStartInfo = New ProcessStartInfo()
processInfo.FileName = "sqlplus.exe"
@C:GREEN(' コマンドプロンプトを表示しない)
processInfo.WindowStyle = ProcessWindowStyle.Hidden
processInfo.Arguments = "/ as sysdba @" + commandFile
Process.Start(processInfo)
MessageBox.Show("処理が終了しました")
End Sub
End Class
@END
|