 |
|
การ Format Path เกี่ยวกับการบันทึกรูป เกิด error ค่ะ มันแจ้งว่า The given path's at is not supported. ที่บรรทัด Me.PictureBox1.Image.Save |
|
 |
|
|
 |
 |
|
เกิด error ค่ะ มันแจ้งว่า The given path's format is not supported.
ที่บรรทัด
Me.PictureBox1.Image.Save(theFile, Imaging.ImageFormat.Jpeg)
ถ้าที่บรรทัด
fname1 = System.DateTime.Now.ToString("HH_mm_ss") มันไม่error นะค่ะ
แต่หนูต้องการเปลี่ยนเป็น
fname1 = System.DateTime.Now.ToLongTimeString(HH:mm:ss)
ยังงั้ยรบกวนผู้รู้ช่วยดูหน่อยนะค่ะ แก้หลายวันแล้ว งงมากเลยค่ะ
ขอบคุณล่วงหน้าค่ะ
Code
Imports System.DateTime
Imports System
Imports System.IO
Imports System.IO.DirectoryInfo
Public Class Form2
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Integer, ByVal dwExtraInfo As Integer)
Public Function SaveScreen(ByVal theFile As String) As Boolean
Dim data As IDataObject
data = Clipboard.GetDataObject()
Dim bmap As Bitmap
If data.GetDataPresent(GetType(System.Drawing.Bitmap)) Then
bmap = CType(data.GetData(GetType(System.Drawing.Bitmap)), Bitmap)
Me.PictureBox1.Image = bmap
Me.PictureBox1.Image.Save(theFile, Imaging.ImageFormat.Jpeg)
End If
End Function
Private Sub Command2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Command2.Click
Hide() 'เมื่อคลิกปุ่มจะทำการซ่อนหน้าจอนี้
Dim fname2 As String
fname2 = System.DateTime.Now.ToLongDateString
Dim fname1 As String
fname1 = System.DateTime.Now.ToLongTimeString 'System.DateTime.Now.ToLongTimeString
Dim di As DirectoryInfo = New DirectoryInfo("c:\" + fname2)
Threading.Thread.Sleep(200) 'ทำการ sreen หน้าจอหลังจากกดปุ่ม 2 วินาที
Call keybd_event(System.Windows.Forms.Keys.Snapshot, 0, 0, 0)
System.Threading.Thread.Sleep(100) 'เมื่อ Screen แล้วให้มันแสดงหน้าจอใหม่ภายใน 1 วินาที
SaveScreen("C:\" + fname2 + fname1 + ".jpeg")
di.Create()
Me.Show() 'เมื่อ screen หน้าจอเสร็จให้ทำการโชว์หน้าจอนี้อีกครั้ง
End Sub
End Class
Tag : - - - -
|
|
 |
 |
 |
 |
Date :
2010-02-23 19:53:54 |
By :
yuning |
View :
3417 |
Reply :
3 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

fname1 = System.DateTime.Now.ToLongTimeString(HH:mm:ss)
>>
fname1 = System.DateTime.Now.ToString("HH:mm:ss")
ชื่อไฟล์อย่า colon (:) จะดีกว่ามั้งคะ underscore (_) ดีกว่าค่ะ ไม่ error เวลาเรียกใช้
|
 |
 |
 |
 |
Date :
2010-02-23 21:00:20 |
By :
blurEye |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
มันยังฟ้องเหมือนเดิมค่ะ คือจะให้มันเซฟตามเวลาเครื่องค่ะ
อยากให้มันเป็น (:)
|
 |
 |
 |
 |
Date :
2010-02-23 21:45:32 |
By :
yuning |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

อ๋อ ชื่อไฟล์ห้ามมีตัวอักษร / ? * : ค่ะ
คงต้องเปลี่ยนเป็นอย่างอื่น ลองเปิด windows explorer ดูสิคะ
แล้ว Rename folder หรือ file ให้มี : มันจะไม่ยอมค่ะ
ส่วนว่า HH_mm_ss
>> อาจต้องเขียนยาวขึ้นนิสนุง
Code (VB.NET)
Public Function GiveMeDateTimeFormatForFileNameNow(ByVal varDateTime As DateTime _
,Optional varSeparator As String = "_")
Dim retStr As String = String.Empty
retStr = string.Format( "{1}{0}{2}{0}{3} {4}{0}{5}{0}{6}" ,varSeparator _
,varDateTime.Year.ToString() ,varDateTime.Month.ToString() ,varDateTime.Day.ToString() _
,varDateTime.Hour.ToString() ,varDateTime.Minute.ToString() ,varDateTime.Second.ToString())
Return retStr
End Function
.....
.....
Dim di As DirectoryInfo = New DirectoryInfo("c:\" + GiveMeDateTimeFormatForFileNameNow (DateTime.Now))
|
 |
 |
 |
 |
Date :
2010-02-23 22:37:55 |
By :
blurEye |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|