ขีด จำกัด ขนาดของคลิปบอร์ด


1

มีการ จำกัด ขนาดของข้อมูลที่สามารถคัดลอกไปยังคลิปบอร์ดได้หรือไม่? ฉันใช้ VB6 และจำเป็นต้องคัดลอกบล็อคข้อมูลไปยังคลิปบอร์ด


นี่เป็นคำถามการเขียนโปรแกรมหรือไม่ ถ้าเป็นเช่นนั้นวิธีการให้รายละเอียดเพิ่มเติมให้เราเพื่อให้เราสามารถช่วยคุณออก ถ้าไม่คำถามนี้เป็นของที่อื่น
Bevan

ใช่ฉันกำลังพยายามเขียนข้อมูลไปยังคลิปบอร์ดโดยใช้ vb6 นั่นเป็นเหตุผลที่ฉันสงสัยเกี่ยวกับขีด จำกัด ของมัน

ตกลง - พยายามย้ายกลับ แต่เห็นได้ชัดว่าเราทำไม่ได้ คำแนะนำที่ดีที่สุดของฉันคือการให้คะแนนคำถามเปิดใหม่และแจ้งให้ Pradeep แก้ไขคำถามของเขาอีกครั้ง
BinaryMisfit

ทำไมถึงเป็นแบบนี้กับ SU? นี่ไม่ใช่คำถามสำหรับโปรแกรมหรือไม่?
Preet Sangha

ขนาดของคลิปบอร์ดไม่ขึ้นกับเนื้อหาเฉพาะที่คุณต้องการใส่หรือไม่ สิ่งนี้ทำให้คำถามการเขียนโปรแกรมคืออะไร มันไม่เกี่ยวกับการเขียนโปรแกรมคลิปบอร์ด
fixer1234

คำตอบ:


1

ในการเพิ่มบางสิ่งลงในคลิปบอร์ดคุณต้องจัดสรรหน่วยความจำสำหรับข้อมูลก่อนจากนั้นส่งต่อหมายเลขอ้างอิงของบล็อกหน่วยความจำนี้ไปยังคลิปบอร์ด เนื่องจากแอปพลิเคชัน WIN32 ถูก จำกัด ไว้ที่หน่วยความจำ 2 GB จำนวนหน่วยความจำที่คุณสามารถจัดสรรได้จะเกี่ยวข้องกับขนาดของ RAM ที่ยังคงมีอยู่ในแอปพลิเคชันของคุณ ด้วยพารามิเตอร์เพิ่มเติม / 3GB ใน boot.ini คุณสามารถทำให้จำนวนนี้ใหญ่ขึ้นอีกหน่อย และหากระบบของคุณมี RAM น้อยกว่า 2 GB การเพิ่มขนาดของไฟล์ swap จะช่วยให้ส่งได้มากถึง 2 GB แน่นอนว่าแอปพลิเคชันไคลเอนต์ยังต้องสามารถใช้ข้อมูลนี้ได้ การพยายามที่จะใช้ข้อมูล 1500 MB ในกระบวนการที่มีเพียง 600 MB จะไม่สามารถใช้งานได้

แต่ถ้าคุณต้องการส่งข้อมูลขนาดใหญ่อย่างแท้จริงให้ใช้ไฟล์ชั่วคราวแทน! เคล็ดลับอย่างหนึ่งคือการใช้ส่วนต่อประสาน COM สร้างคลาส COM ของคุณเองก่อนซึ่งจำเป็นต้องล้อมรอบข้อมูลโดยที่ข้อมูลควรเป็นแบบไฟล์ จากนั้นสร้างไฟล์ชั่วคราวและเพิ่มข้อมูลของคุณลงในไฟล์นี้ สร้างวัตถุ COM ซึ่งเชื่อมโยงไปยังไฟล์ชั่วคราวนี้และส่งวัตถุ COM ไปยังลูกค้า ไคลเอนต์จำเป็นต้องสามารถจัดการวัตถุ COM ด้วย แต่สามารถใช้เพื่อแยกข้อมูลจากอีกครั้ง ในทางทฤษฎีจะช่วยให้คุณมีพื้นที่หน่วยความจำไม่ จำกัด ข้อเสีย: คุณต้องเขียนคลาส COM และรู้ว่าคุณกำลังทำอะไรอยู่

หรือใช้เทคนิคอื่นเพื่อส่งข้อมูล ไปป์ที่มีชื่อ, mailslots, TCP / IP ... มีหลายเทคนิคระหว่างกระบวนการทางเลือกในการส่งข้อมูลระหว่างสองแอปพลิเคชัน

เนื่องจากคุณใช้ VB6 ฉันจะไม่เริ่มตัวเลือก. NET หรือ WIN64


0

ขึ้นอยู่กับปริมาณของหน่วยความจำในระบบ


1
ฉันไม่คิดอย่างนั้น แต่ "จำนวนหน่วยความจำ" นั้นคลุมเครือเกินไป Phsyical RAM หรือหน่วยความจำเสมือน? แล้วระบบที่มีหน่วยความจำ 4GB และแอพ 32 บิตล่ะ?

0

ข้อมูลส่วนใหญ่จะถูกคัดลอกเป็นข้อมูลอ้างอิงแทนที่จะเป็นข้อมูลเองเพื่อให้คุณสามารถคัดลอกทุกขนาดได้ทุกขนาด แม้ว่าข้อความจะถูกคัดลอกและจากสิ่งที่ฉันรู้ว่าจำนวนข้อมูลถูก จำกัด ว่า ram มีประโยชน์มากน้อยเพียงใด จำไว้ว่าถ้า vb6 สามารถจัดการได้ฉันแน่ใจว่าคลิปบอร์ดสามารถจัดการได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.