Copier Windev / Coller Windows (Fichiers uniquement)

Demandé et répondu par KPiTN le 27-Sep-2004 12:14

Copier Windev / Coller Windows (Fichiers uniquement)

Copier des Fichiers sous windev, pour les coller sous windows.

SI AppelDLL32("user32", "OpenClipboard",0) ALORS
	AppelDLL32("user32", "EmptyClipboard" )
	Data=""
	
	//Récupération des chemins de fichiers dans une table 
	POUR i=1 A TableSelectOccurrence(TABLEEXEMPLE)
		Data+=TABLEEXEMPLE.Chemin[TableSelect(TABLEEXEMPLE,i)] + Caract(0)	
	FIN
	
	
	hGlobal=AppelDLL32("kernel32","GlobalAlloc",0x40,Dimension(df) + Taille(Data))
	SI hGlobal ALORS
		lpGlobal=AppelDLL32("kernel32","GlobalLock",hGlobal)
		
		
		df:pFiles = Dimension(df)
		AppelDLL32("kernel32","RtlMoveMemory",lpGlobal,&df,Dimension(df))
		AppelDLL32("kernel32","RtlMoveMemory",(lpGlobal + Dimension(df)),Data,Taille(Data))
		AppelDLL32("kernel32","GlobalUnlock",hGlobal)
		
		
		// Copie les fichiers dans le press papier
		SI AppelDLL32("user32", "SetClipboardData",CF_HDROP,hGlobal) ALORS
			AppelDLL32("user32", "CloseClipboard") 				
		FIN
	FIN
FIN

Cette Q&R a été trouvée sur WDForge.org : http://old.wdforge.org/modules/smartfaq/faq.php?faqid=25