PDA

View Full Version : شروع مجدد یک پروسس kill شده



elmira_63
دوشنبه 28 اردیبهشت 1388, 16:49 عصر
سلام دوستان
برای restore کردن یک فایل backup در برنامم میام قبل از restore کردن پروسس برنامم رو اینجوری kill می کنم



Dim AllProcesses() As Process = Process.GetProcesses
OnErrorResumeNext
ForEach _Process As Process In AllProcesses
If _Process.ProcessName = "phon1"Then
_Process.kill()
EndIf
Next

برای بار اول درست بازیابی میکنه اطلاعات رو ولی اگه دوباره بخوام بازیابی کنم نمی شه فکنم چون پروسسم kill شده

حالا چیکار کنم که دوباره بتونم یه فایل رو restore کنم
اینم کل کد بازیابی



Dim openfiledialog1 As New OpenFileDialog
Dim path As String
server = New SQLDMO.SQLServer2
server.LoginSecure = True
openfiledialog1.Filter = "(*.bak)|*.bak"
openfiledialog1.Title = "تعیین فایل برای بازیابی"
If openfiledialog1.ShowDialog = Windows.Forms.DialogResult.OK Then

server.Connect(My.Computer.Name)
database = server.Databases.Item("telephon")
Dim AllProcesses() As Process = Process.GetProcesses
On Error Resume Next
For Each _Process As Process In AllProcesses
If _Process.ProcessName = "phon1" Then
_Process.kill()
End If
Next
restor.Database = database.Name
path = openfiledialog1.FileName
restor.Files = path
restor.ReplaceDatabase = True
SqlConnection.ClearAllPools()
restor.SQLRestore(server)
server.DisConnect()
restor = Nothing
server = Nothing
MsgBox(" کلیه اطلاعات بازیابی شد")
End If

حامد مصافی
دوشنبه 28 اردیبهشت 1388, 17:11 عصر
نیازی به kill نیست.
این لینک (http://barnamenevis.org/forum/showthread.php?t=153480)را ببینید.

elmira_63
دوشنبه 28 اردیبهشت 1388, 17:37 عصر
نیازی به kill نیست.
این لینک (http://barnamenevis.org/forum/showthread.php?t=153480)را ببینید.

ممنون از لطفتون ولی برنامتون باز نشد و در ضمن من vb.ent کار میکنم برنامتون با c# بودش
اگه ممکنه یه توضیح کوچیک در مورد مشکل من بگید
اگه نیازی به kill کردن نیست چیکار کنم؟

elmira_63
سه شنبه 29 اردیبهشت 1388, 10:08 صبح
کسی مشکل منو نمی دونه؟؟
راستی یه چیز دیگم بگم که دیتابیس زمانی که دارم restore میکنم جاهای دیگه برنامه در حال استفاده هست، به خاطر این موضوع نباید prcess متوقف بشه؟؟

anooshiran
سه شنبه 29 اردیبهشت 1388, 12:01 عصر
با سلام

دوست عزيز منطقا بايد پروسس را متوقف كنيد و پس از restor كردن مجددا پروسس را start كنيد.



Process.Start("ProcessName")

elmira_63
چهارشنبه 30 اردیبهشت 1388, 14:42 عصر
با سلام

دوست عزيز منطقا بايد پروسس را متوقف كنيد و پس از restor كردن مجددا پروسس را start كنيد.



Process.Start("ProcessName")


ممنون ولی منم پروسس رو kill میکنم بعد restore میکنم و دوباره پروسس رو استارت میکنم ولی سری بعد که میخوام بازیابی کنم مینویسه که بازیابی انجام شد ولی بازیابی نمی کنه