1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
sHInst est un entier //Contient l'instance de la DLL
nRslt est un entier //Resultat de l'execution de la DLL
sHInst = ChargeDLL("aygshell.DLL")
MoiMême..Plan = 1
//Déclaration des chaines
sChaine_pszInitialDir est une chaîne = fRepExe() +["\"]+ "Images\" //Chemin de destination : attention, un seul "\"
sChaine_pszDefaultFileName est une chaîne = ChaîneConstruit("MaPhoto_%1_%2.jpg", DateDuJour(), Maintenant())//Nom du fichier image
sChaine_pszTitle est une chaîne = "Ma photo" // Titre à aficher dans l'execution du programme caméra
// Déclaration de la structure SHCAMERACAPTURE
SHCAMERACAPTURE est une structure
cbSize est un entier sur 4 octets //Type C : DWORD
hwndOwner est un entier sur 4 octets //Type C : HWND
//szFile est une tableau fixe de 1 par 260 caractères //Type C : TCHAR
szFile est un tableau fixe de 1 par 260 caractères //caractères
pszInitialDir est un entier sur 4 octets //Type C : LPCTSTR
pszDefaultFileName est un entier sur 4 octets //Type C : LPCTSTR
pszTitle est un entier sur 4 octets //Type C : LPCTSTR
StillQuality est un entier sur 4 octets //Type CAMERACAPTURE_STILLQUALITY non retrouvé (entier est le type le plus fréquent, mais à VERIFIER)
VideoTypes est un entier sur 4 octets//Type CAMERACAPTURE_VIDEOTYPES non retrouvé (entier est le type le plus fréquent, mais à VERIFIER)
nResolutionWidth est un entier sur 4 octets //Type C : DWORD
nResolutionHeight est un entier sur 4 octets //Type C : DWORD
nVideoTimeLimit est un entier sur 4 octets //Type C : DWORD
Mode est un entier sur 4 octets //Type CAMERACAPTURE_MODE non retrouvé (entier est le type le plus fréquent, mais à VERIFIER)
FIN
//Déclaration de la Variable composée
stMaPhoto est un SHCAMERACAPTURE
//assignation des valeurs dans la structure
//stMaPhoto:hwndOwner = Handle(FEN_APN) //handle de la fenetre d'appel. MSDN dit que ça peut etre null mais bon...
stMaPhoto:hwndOwner = Null //handle de la fenetre d'appel. MSDN dit que ça peut etre null mais bon...
stMaPhoto:pszInitialDir = &sChaine_pszInitialDir //"\My Documents" pour rappel
stMaPhoto:pszDefaultFileName = &sChaine_pszDefaultFileName // "PictureFile.JPG" pour rappel
stMaPhoto:pszTitle = &sChaine_pszTitle //"Ma Photo"
stMaPhoto:StillQuality = 3 // 0 par défaut, 1 pour Low, 2 pour Normal 3 pour high
stMaPhoto:VideoTypes = 0x0000 // pour une photo ! on aurait aussi pu mettre 0 tout simplement
stMaPhoto:nResolutionWidth = 176 //réso horizontale
stMaPhoto:nResolutionHeight = 144 //réso verticale
stMaPhoto:nVideoTimeLimit = 0 //durée en seconde pour une video
stMaPhoto:Mode = 0 //0 pour une photo, 1 pour video seulement, 2 pour video avec audio
stMaPhoto:cbSize = Dimension(stMaPhoto)
SI sHInst = 0 ALORS
Erreur("Erreur lçors du chargement")
SINON
nRslt = AppelDLL32("aygshell","SHCameraCapture",&stMaPhoto)
//API(hInst,"SHCameraCapture",&stMaPhoto)
j est un entier
sCheminImage est une chaîne // chemin complet de la photo prise.
//on caste le tablau de caractères pour en constituer une chaine
POUR j=1 A 260
sCheminImage = sCheminImage + stMaPhoto:szFile[1][j]
SI sCheminImage<>"" ALORS Info(sCheminImage)
SI Droite(sCheminImage,4) = ".JPG" ALORS SORTIR
FIN
DéchargeDLL(sHInst)
FIN |