ThaiPBL.com

PowerBuilder Library Thailand

อีเมล พิมพ์ PDF

การจัดการกับ Directory

วันนี้เราจะมาพูดถึงเรื่องการใช้งาน API บน PowerBuilder สำหรับชุดแรกที่เราจะพูดถึงนั้นจะเป็นเรื่องเกี่ยวกับ การจัดการกับ Directory ก่อนเป็นอันดับแรก

สำหรับการใช้งาน API บน PowerBuilder นั้นเราต้องมีการกำหนด API นั้นๆให้เป็น Function ตัวหนึ่งก่อน โดยทำการกำหนดเอาใว้ที่ Local External Functions หรือ Global External Functions ก็ได้แล้วแต่วัตถุประสงค์ของแต่ละบุคคล

การใช้ Global หรือ Local External FUnctions นั้นเมื่อเราต้องการขึ้นบรรทัดใหม่ให้กดแป้นดังนี้

Ctrl+Enter

การเขียนฟังก์ชั่นในการติดต่อกับ API นั้นต้องตรวจสอบให้ดีนะครับ ตัวเล็กตัวใหญ่มีผลต่อคำสั่งด้วย

ฟังก์ชั่นแรกที่เราจะพูดถึงก็คือ



CreatDirectory

คำสั่งนี้จะทำการสร้าง Directory ตามชื่อที่เรากำหนด

รูปแบบ

FUNCTION boolean CreateDirectoryA(ref string path , long attr ) LIBRARY "kernel32.dll"

วิธีการใช้งานก็เรียกฟังก์ชั่นโดยตรงเลย

CreateDirectoryA(Sle_2.text,0)

สำหรับค่า 0 นั้นให้กำหนดลงไปเลยไม่ต้องเปลี่ยนแปลง

Sle_2.text ก็คือรับชื่อมาจาก SingleLineEdit แล้วนำมาสร้างเป็น Directory



RemoveDirectory

คำสั่งนี้จะทำการลบ Directory ที่เรากำหนดทิ้งไป

รูปแบบ

FUNCTION boolean RemoveDirectoryA(ref string path) LIBRARY "kernel32.dll"

ตัวอย่างการใช้งานตาม สคริปต์ด้านล่าง

Boolean ll_ret
String ls_dir

ls_dir = sle_2.text
ll_ret = RemoveDirectoryA(ls_dir)

ค่า ls_dir คือชื่อของ Directory ที่เราต้องการลบโดยรับค่ามาจาก SingleLineEdit และค่า ll_ret เป็นการตรวจสอบการทำงานของฟังก์ชั่นว่า ทำงานได้สมบูรณ์หรือไม่ ค่าจะเป็น True หรือ False



GetCurrentDirectory

คำสั่งนี้จะอ่าน Directory ปัจจุบันที่ Windows อ้างถึงอยู่

รูปแบบ

FUNCTION long GetCurrentDirectoryA( long length , ref string path) LIBRARY "kernel32.dll"

ตัวอย่างการใช้งานตาม สคริปต์ด้านล่าง

String ls_path
long ll_ret

ls_path = Space(250)
ll_Ret = GetCurrentDirectoryA(250, ls_path)
If ll_Ret > 0 Then
ls_Path = Left(ls_path,ll_Ret)
End if
Sle_1.Text = ls_path



SetCurrentDirectory

คำสั่งนี้จะทำการเปลี่ยน Directory ไปเป็น Directory ที่เรากำหนดเอาใว้

รูปแบบ

FUNCTION boolean SetCurrentDirectoryA(ref string lpsdir) LIBRARY "kernel32.dll"


ตัวอย่างการใช้งานตาม สคริปต์ด้านล่าง

String ls_Directory
Boolean lb_Return

ls_Directory = Trim(Sle_2.text)
lb_Return = SetCurrentDirectoryA( ls_Directory)