เมื่อคุณติดตั้งโปรแกรมทั้ง Delphi และ C++ Builder ต่างก็ให้โปรแกรมทูลที่อยู่บน
Command ที่ชื่อว่า
TDUMP.EXE โดยโปรแกรมนี้จะทำหน้าที่ค้นหาและแสดงรายชื่อ DLL ที่โปรแกรมเรียกใช้
ถ้าคุณใส่พาราเป็น -em โปรแกรม TDUMP จะแสดง DLL ทุกตัวที่โปรแกรมเรียกใช้ทั้ง
รวมทั้ง DLL ที่ DLL ตัวที่แสดงอ้างถึง คุณสามารถใช้งานโปรแกรมนี้ได้ไปที่
Command Prompt แล้วพิมพ์ดังนี้
tdump -em. project1.exe
หมายเหตุ -em แล้วต่อท้ายด้วยจุดนะครับเป็น
-em.
มาดูตัวอย่างการใช้งานกันดีกว่าครับ
ตัวอย่างการใช้งานบน Delphi
รูปที่ 1 เมื่อคุณเลือกให้โปรแกรมใช้งาน
DLL แบบ Dynamic
รูปที่ 1 เป็นการกำหนดให้โปรเจคไฟล์ที่ได้เรียกใช้
Runtime Library แบบ Dynamic หมายความว่า Windows ต้องมี Library ดังกล่าวติดตั้งไว้ด้วย
ดูแล้วไม่สะดวก ในใช้งานเลยใช่มั้ยครับ เพราะเวลาใช้งานจริงเราต้องติดตั้ง
dll ไฟล์ต่าง ๆ ที่โปรแกรมต้องเรียกใช้หลายตัวจากรูปที่ 2 จะเห็นว่า Project1.exe
เรียกใช้ rtl170.bpl, kernel32.dll คุณจำเป็นต้องติดตั้ง 2 ไฟล์นี้เข้าไปใน
Windows ด้วย โดยคัดลอกไปไว้ที่ X:\Windows\system กรณีที่ใช้ Windows 95/98/ME
หมายเหตุ X: หมายชื่อ Drive ที่คุณติดตั้ง Windows เอาไว้ และ X:\Window\System32
กรณีที่คุณใช้ Windows 2000/XP/2003 อีกกรณีคือถ้าคุณไม่เลือก Build with
runtime package ตามรูปที่ 1 ซึ่งเป็นการบอกให้ Develop Tool ในที่นี้ก็คือ
Delphi ทำการผนวก (Bundle) Library ต่าง ๆ เข้าไปใน Execute ไฟล์เลย ดูรูที่
3 ประกอบเป็นการกำหนดให้ Execute ไฟล์เรียกใช้งานแบบ Static แบบนี้สะดวกครับเราสามารถ
นำเอา Execute ไฟล์เพียงตัวเดียว ไปใช้งาน ที่เครื่องปลายทางได้เลย เพราะรายชื่อ
Dll ไฟล์ที่ปรากฏมีอยู่แล้วบน Windows ครับ ลืมบอกไปมีข้อแม้ว่า โปรแกรมดังกล่าว
จะต้องไม่เรียกใช้งาน โปรแกรม หรือ คุณสมบัติเพิ่มเติม ที่ไม่สามารถสืบค้นได้จากโปรแกรม
TDUMP.exe ตัวอย่างเช่น โปรแกรมดังกล่าวมีการใช้งาน Database อันนี้ก่อนที่คุณจะเรียกใช้งาน
Execute ไฟล์ได้คุณต้องติดตั้ง BDE ก่อนครับเพื่อให้ Execute ไฟล์ติดต่อกับ
Database ได้
รูปที่ 2 เมื่อคุณเลือกตามรูปที่ 1
จะได้ผลลัพธ์ดังรูป
รูปที่ 3 เมื่อคุณไม่เลือกตามรูปที่
1 จะได้ผลลัพธ์ดังรูป
? |