Accueil > > > DLL-FONCTIONS 3D
DLL-FONCTIONS 3D
Information sur la source
Description
comp: masm32. Animation 3D cet exemple contient 2 version VB et ASM pour comparer la vitesse.
Source
- .386
- .model flat,stdcall
- include \masm32\include\gdi32.inc
- include \masm32\include\user32.inc
- include data.inc
-
-
- includelib \masm32\lib\gdi32.lib
- includelib \masm32\lib\user32.lib
-
-
- .data
-
- Trgle dd 6 dup(?) ;triangle
- ZL dd 500 dup(?) ;tableau reçevant valeur Z chaque triangle
- OF dd 500 dup(?) ;tableau reçevant offs debut chaque triangle
- ZFValue dd ?
- CSCRNX dd 266.0
- CSCRNY dd 171.0
- PX dd 1024.0
- PZ dd 256.0
- ZERO dd 0
- TROIS dd 3.0
- nFV dd 0 ;nombre de triangle devant être dessinés
- rct dd 4 dup(?) ;reçois dimenssion zone client
- hBrush dd ? ;pinceau zone client
- .code
- DLLMain proc p1,p2,p3
-
- push ebp
- mov ebp, esp
- mov eax, 1
- leave
- ret 12
-
- DLLMain endp
- ;remplis le vtx buffer en ce basant sur les données du data.inc
- MVTXB proc export vtx:PTR
- push edi
- mov ecx,48
- mov ebx,Offset vtxb
- mov edx,Offset Face
- mov edi,vtx
- boucle:
- mov eax,[edx]
- shl eax,5
- add eax,ebx
- mov esi,eax
- push ecx
- mov ecx,8
- rep movsd
- add edx,4
- pop ecx
- loop boucle
- pop edi
- ret
- MVTXB endp
- ;routine principale
- Project proc export vtx:PTR,v2:PTR,nFace:DWORD
-
- ;--------------------------remet à zero nFV(nbr face à dessiner)
- mov edx,Offset nFV
- xor eax,eax
- mov dword ptr[edx],eax
- ;--------------------------
-
- ;---------------------------vide le tableau v2
- mov eax,nFace
- mov ebx,3
- mul ebx
- mov ecx,eax
- mov eax,v2
- xor edx,edx
-
- CLEARBUFF2D:
-
- mov dword ptr[eax],edx
- add eax,4
- loop CLEARBUFF2D
- ;------------------------------
-
- ;-----------------------------Initialise tableau OF
- ;on stocke l'adresse du debut de chaque triangle,
- ;ce tableau va être trié par MakeOF en fonction des
- ;des valeurs contenu dans ZL.
- mov eax,v2
- push eax
- mov ecx,nFace
- push ecx
- call InitOF
- ;-----------------------------
-
- ;------------------------------Transforme 3D en 2D
- ;chaque fois qu'un triangle 2D est creé SortFV est appellé
- ;pour savoir si il est caché ou si il doit être dessiné
- ;si dessiné nFV est incrementé, la valeur Z du triangle est
- ;stockée dans tableau ZL ces valeurs vont être utilisées
- ;par MakeOF pour definir l'ordre dans lequel les triangles
- ;doivent être dessinés.
-
-
- pop ecx
- mov ebx,vtx
-
-
- nextFace:
- xor eax,eax
- mov edx,3
- nextVtx:
-
- fld dword ptr [ebx]
- fmul PX
- fld dword ptr [ebx+8]
- fadd PZ
- fdivp st(1),st(0)
- fadd CSCRNX
- fistp dword ptr [Trgle+eax] ;x
- fld dword ptr [ebx+4]
- fchs
- fmul PX
- fld dword ptr [ebx+8]
- fadd PZ
- fdivp st(1),st(0)
- fadd CSCRNY
- fistp dword ptr [Trgle+eax+4] ;y
-
- add ebx,32
- add eax,8
- dec edx
- jnz nextVtx
- call ZFace
- mov edx,Offset nFV
- pop eax
- call SortFV
- push eax
- loop nextFace
- call MakeOF
- ret
-
- Project endp
- ZFace proc
- fld dword ptr[ebx-88]
- fadd dword ptr[ebx-56]
- fadd dword ptr[ebx-24]
- fdiv TROIS
- fstp dword ptr[ZFValue]
- ret
- ZFace endp
- SortFV proc
- fld dword ptr [Trgle+8]
- fsub dword ptr [Trgle]
- fld dword ptr [Trgle+20]
- fsub dword ptr [Trgle+4]
- fmulp st(1), st(0)
- fld dword ptr [Trgle+12]
- fsub dword ptr [Trgle+4]
- fld dword ptr [Trgle+16]
- fsub dword ptr [Trgle]
- fmulp st(1), st(0)
- fsubp st(1), st(0)
- fcomp ZERO
- push eax
- fstsw ax
- and ah,01000001b
- jnz NEXT
- pop eax
- call MFace
- push eax
- mov eax,[edx]
- push ebx
- mov ebx,ZFValue
- mov dword ptr [ZL+eax*4],ebx
- pop ebx
- inc eax
- mov dword ptr [edx],eax
- pop eax
- ret
- NEXT:
- pop eax
- ret
-
- SortFV endp
- MFace proc
- push edi
- push ecx
- mov esi,Offset Trgle
- mov edi,eax
- mov ecx,6
- rep movsd
- add eax,24
- pop ecx
- pop edi
- ret
- MFace endp
-
- MakeOF proc
- mov ecx,nFV
- dec ecx
- OUTER:
- xor edx,edx
- INNER:
- fld dword ptr [ZL+edx*4]
- fcomp dword ptr [ZL+edx*4+4]
- fstsw ax
- and ah,01000001b
- jnz NEXT
- mov eax,[ZL+edx*4]
- xchg eax,[ZL+edx*4+4]
- mov dword ptr [ZL+edx*4],eax
- mov eax,[OF+edx*4]
- xchg eax,[OF+edx*4+4]
- mov dword ptr [OF+edx*4],eax
- NEXT:
- inc edx
- cmp edx,ecx
- jne INNER
- loop OUTER
- ret
- MakeOF endp
- InitOF proc
- xor ebx,ebx
- boucle:
- mov dword ptr [OF+ebx*4],eax
- add eax,24
- inc ebx
- loop boucle
- ret
- InitOF endp
-
- DrawFace proc export hwnd:DWORD,hDC:DWORD,v2:PTR
- ;----------------------------------- redessine le fond
- invoke GetClientRect, hwnd,ADDR rct
- mov eax,00BFBFBFh
- invoke CreateSolidBrush, eax
- mov hBrush,eax
- invoke FillRect,hDC,ADDR rct,hBrush
- ;------------------------------------
- mov ebx,v2
- mov ecx,nFV
- DRAW:
- push ecx
- dec ecx
- mov ebx,[OF+ecx*4]
- invoke Polygon ,hDC,ebx,3
- pop ecx
- loop DRAW
- invoke InvalidateRect, hwnd,0,0
- invoke DeleteObject, hBrush
- ret
-
- DrawFace endp
- ;//////////////////////////////////////////////////////////////////////////////////////
- ;FONCTIONS DE TRANSFORMATION DE VERTEX
- ;-----------------------------------------------------------------------------RVTXLX
- ;definition:Modifie les elements d'un tableau de vertex de
- ; sorte qu 'ils fassent une rotation sur l'axe X.
- ;declaration de la fonction dll dans un module VB :
- ;declare public sub RVTXLX lib "dll"(ByVal angle as single, _
- ; vtx as D3DVERTEX,ByVal nCount as Long)
-
- RVTXLX proc export Angle:DWORD,vtx:PTR,nCount:DWORD
-
- LOCAL qSin:DWORD
- LOCAL qCos:DWORD
- LOCAL qY:DWORD
- LOCAL qNy:DWORD
-
- fld Angle
- fsincos
- fstp qCos
- fstp qSin
- mov edx,vtx
- mov ecx,nCount
- NextElement:
- ;-----------------------------------------------yz
- fld qCos
- fmul dword ptr [edx+4]
- fld qSin
- fmul dword ptr [edx+8]
- fsubp st(1), st(0)
- fstp qY
- fld qSin
- fmul dword ptr [edx+4]
- fld qCos
- fmul dword ptr [edx+8]
- faddp st(1), st(0)
- fstp dword ptr[edx+8]
- ;-------------------------------------------------nynz
- fld qCos
- fmul dword ptr [edx+16]
- fld qSin
- fmul dword ptr [edx+20]
- fsubp st(1), st(0)
- fstp qNy
- fld qSin
- fmul dword ptr [edx+16]
- fld qCos
- fmul dword ptr [edx+20]
- faddp st(1), st(0)
- fstp dword ptr[edx+20]
- ;-------------------------------------------------
- mov ebx,qY
- mov dword ptr[edx+4],ebx
- mov ebx,qNy
- mov dword ptr[edx+16],ebx
- add edx,32
- loop NextElement
- ret
- RVTXLX endp
-
- ;-----------------------------------------------------------------------------RVTXLY
- ;definition:Modifie les elements d'un tableau de vertex de
- ; sorte qu 'ils fassent une rotation sur l'axe Y.
- ;declaration de la fonction dll dans un module VB :
- ;declare public sub RVTXLY lib "dll"(ByVal angle as single, _
- ; vtx as D3DVERTEX,ByVal nCount as Long)
-
- RVTXLY proc export Angle:DWORD,vtx:PTR,nCount:DWORD
-
- LOCAL qX:DWORD
- LOCAL qNx:DWORD
- LOCAL qSin:DWORD
- LOCAL qCos:DWORD
-
- fld Angle
- fsincos
- fstp qCos
- fstp qSin
- mov edx,vtx
- mov ecx,nCount
- NextElement:
- ;-----------------------------------------------xz
- fld qCos
- fmul dword ptr [edx]
- fld qSin
- fmul dword ptr [edx+8]
- fsubp st(1), st(0)
- fstp qX
- fld qSin
- fmul dword ptr [edx]
- fld qCos
- fmul dword ptr [edx+8]
- faddp st(1), st(0)
- fstp dword ptr[edx+8]
- ;-------------------------------------------------nxnz
- fld qCos
- fmul dword ptr [edx+12]
- fld qSin
- fmul dword ptr [edx+20]
- fsubp st(1), st(0)
- fstp qNx
- fld qSin
- fmul dword ptr [edx+12]
- fld qCos
- fmul dword ptr [edx+20]
- faddp st(1), st(0)
- fstp dword ptr[edx+20]
- ;-------------------------------------------------
- mov ebx,qX
- mov dword ptr[edx],ebx
- mov ebx,qNx
- mov dword ptr[edx+12],ebx
- add edx,32
- loop NextElement
- ret
- RVTXLY endp
- ;-----------------------------------------------------------------------------RVTXLZ
- ;definition:Modifie les elements d'un tableau de vertex de
- ; sorte qu 'ils fassent une rotation sur l'axe Z.
- ;declaration de la fonction dll dans un module VB :
- ;declare public sub RVTXLZ lib "dll"(ByVal angle as single, _
- ; vtx as D3DVERTEX,ByVal nCount as Long)
-
- RVTXLZ proc export
- push ebp
- mov ebp,esp
- sub esp,16
- fld dword ptr [ebp+8]
- fsincos
- fstp dword ptr[ebp-16]
- fstp dword ptr[ebp-12]
- mov edx,[ebp+12]
- mov ecx,[ebp+16]
- NextElement:
- ;-----------------------------------------------xy
- fld dword ptr[ebp-16]
- fmul dword ptr [edx]
- fld dword ptr[ebp-12]
- fmul dword ptr [edx+4]
- fsubp st(1), st(0)
- fstp dword ptr[ebp-8]
- fld dword ptr[ebp-12]
- fmul dword ptr [edx]
- fld dword ptr[ebp-16]
- fmul dword ptr [edx+4]
- faddp st(1), st(0)
- fstp dword ptr [edx+4]
- ;-------------------------------------------------nxny
- fld dword ptr[ebp-16]
- fmul dword ptr [edx+12]
- fld dword ptr[ebp-12]
- fmul dword ptr [edx+16]
- fsubp st(1), st(0)
- fstp dword ptr[ebp-4]
- fld dword ptr[ebp-12]
- fmul dword ptr [edx+12]
- fld dword ptr [ebp-16]
- fmul dword ptr [edx+16]
- faddp st(1), st(0)
- fstp dword ptr[edx+16]
- mov ebx,[ebp-8]
- mov dword ptr[edx],ebx
- mov ebx,[ebp-4]
- mov dword ptr[edx+12],ebx
- add edx,32
- loop NextElement
- mov esp,ebp
- pop ebp
- ret 12
- RVTXLZ endp
-
-
- end DLLMain
.386
.model flat,stdcall
include \masm32\include\gdi32.inc
include \masm32\include\user32.inc
include data.inc
includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\user32.lib
.data
Trgle dd 6 dup(?) ;triangle
ZL dd 500 dup(?) ;tableau reçevant valeur Z chaque triangle
OF dd 500 dup(?) ;tableau reçevant offs debut chaque triangle
ZFValue dd ?
CSCRNX dd 266.0
CSCRNY dd 171.0
PX dd 1024.0
PZ dd 256.0
ZERO dd 0
TROIS dd 3.0
nFV dd 0 ;nombre de triangle devant être dessinés
rct dd 4 dup(?) ;reçois dimenssion zone client
hBrush dd ? ;pinceau zone client
.code
DLLMain proc p1,p2,p3
push ebp
mov ebp, esp
mov eax, 1
leave
ret 12
DLLMain endp
;remplis le vtx buffer en ce basant sur les données du data.inc
MVTXB proc export vtx:PTR
push edi
mov ecx,48
mov ebx,Offset vtxb
mov edx,Offset Face
mov edi,vtx
boucle:
mov eax,[edx]
shl eax,5
add eax,ebx
mov esi,eax
push ecx
mov ecx,8
rep movsd
add edx,4
pop ecx
loop boucle
pop edi
ret
MVTXB endp
;routine principale
Project proc export vtx:PTR,v2:PTR,nFace:DWORD
;--------------------------remet à zero nFV(nbr face à dessiner)
mov edx,Offset nFV
xor eax,eax
mov dword ptr[edx],eax
;--------------------------
;---------------------------vide le tableau v2
mov eax,nFace
mov ebx,3
mul ebx
mov ecx,eax
mov eax,v2
xor edx,edx
CLEARBUFF2D:
mov dword ptr[eax],edx
add eax,4
loop CLEARBUFF2D
;------------------------------
;-----------------------------Initialise tableau OF
;on stocke l'adresse du debut de chaque triangle,
;ce tableau va être trié par MakeOF en fonction des
;des valeurs contenu dans ZL.
mov eax,v2
push eax
mov ecx,nFace
push ecx
call InitOF
;-----------------------------
;------------------------------Transforme 3D en 2D
;chaque fois qu'un triangle 2D est creé SortFV est appellé
;pour savoir si il est caché ou si il doit être dessiné
;si dessiné nFV est incrementé, la valeur Z du triangle est
;stockée dans tableau ZL ces valeurs vont être utilisées
;par MakeOF pour definir l'ordre dans lequel les triangles
;doivent être dessinés.
pop ecx
mov ebx,vtx
nextFace:
xor eax,eax
mov edx,3
nextVtx:
fld dword ptr [ebx]
fmul PX
fld dword ptr [ebx+8]
fadd PZ
fdivp st(1),st(0)
fadd CSCRNX
fistp dword ptr [Trgle+eax] ;x
fld dword ptr [ebx+4]
fchs
fmul PX
fld dword ptr [ebx+8]
fadd PZ
fdivp st(1),st(0)
fadd CSCRNY
fistp dword ptr [Trgle+eax+4] ;y
add ebx,32
add eax,8
dec edx
jnz nextVtx
call ZFace
mov edx,Offset nFV
pop eax
call SortFV
push eax
loop nextFace
call MakeOF
ret
Project endp
ZFace proc
fld dword ptr[ebx-88]
fadd dword ptr[ebx-56]
fadd dword ptr[ebx-24]
fdiv TROIS
fstp dword ptr[ZFValue]
ret
ZFace endp
SortFV proc
fld dword ptr [Trgle+8]
fsub dword ptr [Trgle]
fld dword ptr [Trgle+20]
fsub dword ptr [Trgle+4]
fmulp st(1), st(0)
fld dword ptr [Trgle+12]
fsub dword ptr [Trgle+4]
fld dword ptr [Trgle+16]
fsub dword ptr [Trgle]
fmulp st(1), st(0)
fsubp st(1), st(0)
fcomp ZERO
push eax
fstsw ax
and ah,01000001b
jnz NEXT
pop eax
call MFace
push eax
mov eax,[edx]
push ebx
mov ebx,ZFValue
mov dword ptr [ZL+eax*4],ebx
pop ebx
inc eax
mov dword ptr [edx],eax
pop eax
ret
NEXT:
pop eax
ret
SortFV endp
MFace proc
push edi
push ecx
mov esi,Offset Trgle
mov edi,eax
mov ecx,6
rep movsd
add eax,24
pop ecx
pop edi
ret
MFace endp
MakeOF proc
mov ecx,nFV
dec ecx
OUTER:
xor edx,edx
INNER:
fld dword ptr [ZL+edx*4]
fcomp dword ptr [ZL+edx*4+4]
fstsw ax
and ah,01000001b
jnz NEXT
mov eax,[ZL+edx*4]
xchg eax,[ZL+edx*4+4]
mov dword ptr [ZL+edx*4],eax
mov eax,[OF+edx*4]
xchg eax,[OF+edx*4+4]
mov dword ptr [OF+edx*4],eax
NEXT:
inc edx
cmp edx,ecx
jne INNER
loop OUTER
ret
MakeOF endp
InitOF proc
xor ebx,ebx
boucle:
mov dword ptr [OF+ebx*4],eax
add eax,24
inc ebx
loop boucle
ret
InitOF endp
DrawFace proc export hwnd:DWORD,hDC:DWORD,v2:PTR
;----------------------------------- redessine le fond
invoke GetClientRect, hwnd,ADDR rct
mov eax,00BFBFBFh
invoke CreateSolidBrush, eax
mov hBrush,eax
invoke FillRect,hDC,ADDR rct,hBrush
;------------------------------------
mov ebx,v2
mov ecx,nFV
DRAW:
push ecx
dec ecx
mov ebx,[OF+ecx*4]
invoke Polygon ,hDC,ebx,3
pop ecx
loop DRAW
invoke InvalidateRect, hwnd,0,0
invoke DeleteObject, hBrush
ret
DrawFace endp
;//////////////////////////////////////////////////////////////////////////////////////
;FONCTIONS DE TRANSFORMATION DE VERTEX
;-----------------------------------------------------------------------------RVTXLX
;definition:Modifie les elements d'un tableau de vertex de
; sorte qu 'ils fassent une rotation sur l'axe X.
;declaration de la fonction dll dans un module VB :
;declare public sub RVTXLX lib "dll"(ByVal angle as single, _
; vtx as D3DVERTEX,ByVal nCount as Long)
RVTXLX proc export Angle:DWORD,vtx:PTR,nCount:DWORD
LOCAL qSin:DWORD
LOCAL qCos:DWORD
LOCAL qY:DWORD
LOCAL qNy:DWORD
fld Angle
fsincos
fstp qCos
fstp qSin
mov edx,vtx
mov ecx,nCount
NextElement:
;-----------------------------------------------yz
fld qCos
fmul dword ptr [edx+4]
fld qSin
fmul dword ptr [edx+8]
fsubp st(1), st(0)
fstp qY
fld qSin
fmul dword ptr [edx+4]
fld qCos
fmul dword ptr [edx+8]
faddp st(1), st(0)
fstp dword ptr[edx+8]
;-------------------------------------------------nynz
fld qCos
fmul dword ptr [edx+16]
fld qSin
fmul dword ptr [edx+20]
fsubp st(1), st(0)
fstp qNy
fld qSin
fmul dword ptr [edx+16]
fld qCos
fmul dword ptr [edx+20]
faddp st(1), st(0)
fstp dword ptr[edx+20]
;-------------------------------------------------
mov ebx,qY
mov dword ptr[edx+4],ebx
mov ebx,qNy
mov dword ptr[edx+16],ebx
add edx,32
loop NextElement
ret
RVTXLX endp
;-----------------------------------------------------------------------------RVTXLY
;definition:Modifie les elements d'un tableau de vertex de
; sorte qu 'ils fassent une rotation sur l'axe Y.
;declaration de la fonction dll dans un module VB :
;declare public sub RVTXLY lib "dll"(ByVal angle as single, _
; vtx as D3DVERTEX,ByVal nCount as Long)
RVTXLY proc export Angle:DWORD,vtx:PTR,nCount:DWORD
LOCAL qX:DWORD
LOCAL qNx:DWORD
LOCAL qSin:DWORD
LOCAL qCos:DWORD
fld Angle
fsincos
fstp qCos
fstp qSin
mov edx,vtx
mov ecx,nCount
NextElement:
;-----------------------------------------------xz
fld qCos
fmul dword ptr [edx]
fld qSin
fmul dword ptr [edx+8]
fsubp st(1), st(0)
fstp qX
fld qSin
fmul dword ptr [edx]
fld qCos
fmul dword ptr [edx+8]
faddp st(1), st(0)
fstp dword ptr[edx+8]
;-------------------------------------------------nxnz
fld qCos
fmul dword ptr [edx+12]
fld qSin
fmul dword ptr [edx+20]
fsubp st(1), st(0)
fstp qNx
fld qSin
fmul dword ptr [edx+12]
fld qCos
fmul dword ptr [edx+20]
faddp st(1), st(0)
fstp dword ptr[edx+20]
;-------------------------------------------------
mov ebx,qX
mov dword ptr[edx],ebx
mov ebx,qNx
mov dword ptr[edx+12],ebx
add edx,32
loop NextElement
ret
RVTXLY endp
;-----------------------------------------------------------------------------RVTXLZ
;definition:Modifie les elements d'un tableau de vertex de
; sorte qu 'ils fassent une rotation sur l'axe Z.
;declaration de la fonction dll dans un module VB :
;declare public sub RVTXLZ lib "dll"(ByVal angle as single, _
; vtx as D3DVERTEX,ByVal nCount as Long)
RVTXLZ proc export
push ebp
mov ebp,esp
sub esp,16
fld dword ptr [ebp+8]
fsincos
fstp dword ptr[ebp-16]
fstp dword ptr[ebp-12]
mov edx,[ebp+12]
mov ecx,[ebp+16]
NextElement:
;-----------------------------------------------xy
fld dword ptr[ebp-16]
fmul dword ptr [edx]
fld dword ptr[ebp-12]
fmul dword ptr [edx+4]
fsubp st(1), st(0)
fstp dword ptr[ebp-8]
fld dword ptr[ebp-12]
fmul dword ptr [edx]
fld dword ptr[ebp-16]
fmul dword ptr [edx+4]
faddp st(1), st(0)
fstp dword ptr [edx+4]
;-------------------------------------------------nxny
fld dword ptr[ebp-16]
fmul dword ptr [edx+12]
fld dword ptr[ebp-12]
fmul dword ptr [edx+16]
fsubp st(1), st(0)
fstp dword ptr[ebp-4]
fld dword ptr[ebp-12]
fmul dword ptr [edx+12]
fld dword ptr [ebp-16]
fmul dword ptr [edx+16]
faddp st(1), st(0)
fstp dword ptr[edx+16]
mov ebx,[ebp-8]
mov dword ptr[edx],ebx
mov ebx,[ebp-4]
mov dword ptr[edx+12],ebx
add edx,32
loop NextElement
mov esp,ebp
pop ebp
ret 12
RVTXLZ endp
end DLLMain
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
974 Application Server (12.2.4.0)974 APPLICATION SERVER (12.2.4.0)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP mySongBook Player (1.0.0)MYSONGBOOK PLAYER (1.0.0)mySongBook Player est un logiciel gratuit permettant l'accès à une archive de tablatures/partitio... Cliquez pour télécharger mySongBook Player
|