IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

Comment Activer/D�sactiver Direct3D sous VC++ ?


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut Comment Activer/D�sactiver Direct3D sous VC++ ?
    Bonjour � tous !
    Derni�rement j'ai eu quelques soucis d'affichage avec une fonctionnalit� d'un soft de prise de contr�le distant et il s'est av�r� que si je d�sactivais Direct3d (ou l'acc�l�ration mat�rielle) au bon moment, mon probl�me se r�solvait.

    Toutefois, je voudrais �viter de me taper cette manip � la mano � chaque fois et mon id�e �tait de cr�er un petit exe permettant de le faire.

    En ce sens, est-ce que quelqu'un connait soit les routines VC++ (MFC ou pas) permettant d'Activer/D�sactiver Direct3D ? (un peu comme le bouton sous DxDiag de directX finalement)
    Est-ce qu'il existe aussi des m�thodes permettant de conna�tre l'�tat (Activ� ou D�sactiv�) de Direct3D ?

    Merci d'avance.

    Liv.

  2. #2
    Membre chevronn�
    Avatar de matazz
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    471
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 471
    Par d�faut
    essaye de chercher direct3D dans la base de registre, avec un peut de chance tu aura une clef qui te l'active et desactive....

  3. #3
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    L'id�e est bonne mais j'ai rien trouv� de concluant. De toute fa�on, m�me si il existait une cl�, tu penses que le fait de changer sa valeur permettrait d'Activer/D�sactiver en simultan�e Direct3D ?
    Dans mon cas je ne pensa pas que cela aurait une quelconque incidence car le soft en question ne s'appuie pas sur des valeurs de registre pour utiliser ou non Direct3D...il utilise des m�thodes directes de bas niveau li�es � DirectX.

    Je suis en train de mettre le nez dedans...DirectX et compagnie...c'est un vrai bonheur. Une vraie usine � gaz ! lol
    Mais je pense qu'il existe des m�thodes toute pr�tes...il suffit de les trouver quoi.

  4. #4
    R�dacteur
    Avatar de Laurent Gomila
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par d�faut
    Activer ou d�sactiver Direct3D ne veut pas dire grand chose. Surtout si tu as du code l'utilisant. C'est l'acc�l�ration hardware que tu veux d�sactiver (ie. utiliser le rendu software) ?

  5. #5
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Oui oui tout � fait...il s'agit effectivement de d�sactiver l'acc�l�ration mat�rielle. Mais comme j'avais le m�me r�sultat en d�sactivant Direct3D sous DxDiag de DirectX, je me suis dis que c'�tait � peu pr�s la m�me chose.
    Enfin...de toute fa�on c'est exactement ce que je cherche � faire...d�sactiver l'acc�l�ration mat�rielle via une ou plusieurs m�thodes sous Visual C++.

  6. #6
    R�dacteur
    Avatar de Laurent Gomila
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par d�faut
    Ok.

    Par contre, est-ce que dans ton code tu utilises D3D ou bien tu n'as aucun bout de code qui y fasse r�f�rence ?

    Et puis faudrait tout de m�me savoir pourquoi d�sactiver l'acc�l�ration hardware r�soud ton probl�me, bizarre cette histoire.

  7. #7
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Bien...en fait pour te situer d'avantage la situation, je ne g�re absolument pas le code source du logiciel.
    Il s'agit du logiciel HiClass con�u et r�alis� � Ta�wan et sp�cialis� dans le domaine des laboratoires multim�dia � caract�re p�dagogique. Il fait en gros de la prise de contr�le distant...et d'autre choses bien entendu.

    Comme tu peux t'en douter nous avons poser le probl�me aux asiatiques qui nous ont r�pondu que le logiciel ne g�rait pas la fonctionnalit� en question, dans le cadre d'un double-�cran.
    Pendant notre recherche de r�solution de probl�me nous avons remarqu� que cette fonctionnalit� fonctionnait si l'on d�sactivait l'acc�l�ration mat�rielle.
    Sur ce, l'id�e est de lancer, via un bouton du soft, cette d�sactivation juste avant de lancer la fonctionnalit� en question...�a on peut le faire, on a cette libert�.

    Il faut donc que je ponde un exe permmettant de le faire...capable d'ailleur de r�p�rer l'�tat de l'acc�l�ration mat�rielle aussi...et de l'activer/d�sactiver en cons�quence.
    En gros, je pars de z�ro. lol

    Voil� le contexte.

  8. #8
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Probleme de carte graphique et de driver s�rement... (�a serait pas une carte ATI des fois ?) tu as essay� sur un autre PC ?

  9. #9
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Oui avec plusieurs. Visiblement �a ne viens pas de la carte. C'est vraiment le soft qui ne g�re pas donc du coup je suis oblig� de me taper le dev. En m�me temps �a peut-�tre int�ressant.

  10. #10
    mat.M
    Invit�(e)
    Par d�faut
    Il faut donc que je ponde un exe permmettant de le faire...capable d'ailleur de r�p�rer l'�tat de l'acc�l�ration mat�rielle aussi...et de l'activer/d�sactiver en cons�quence.
    En gros, je pars de z�ro. lol
    tu veux dire d�sinstaller temporairement Direct X ( c'est ce que je crois comprendre ) ?
    La seule solution est de d�sinstaller totalement Direct X chose qui est compliqu�e voire impossible

  11. #11
    mat.M
    Invit�(e)
    Par d�faut
    je crois que c'est assez ardu ce que tu demandes l�
    Il faut peut-�tre directement toucher aux drivers avec le DDK ( ce que doit faire DxDiag )

    Voir des fonctions comme:
    DrvDisablePDEV
    The DrvDisablePDEV function is used by GDI to notify a driver that the specified PDEV is no longer needed.

    VOID
    DrvDisablePDEV(
    IN DHPDEV dhpdev
    );
    Parameters
    dhpdev
    Handle to the PDEV of the physical device to be disabled. This value is the handle returned by DrvEnablePDEV.
    Headers
    Declared in winddi.h. Include winddi.h.

    Comments
    If the physical device has an enabled surface, GDI calls DrvDisablePDEV after calling DrvDisableSurface. The driver should free any memory and resources used by the PDEV.

    DrvDisablePDEV is required for graphics drivers.

    See Also
    DrvAssertMode, DrvDisableSurface, DrvEnablePDEV
    Est-ce qu'il faut �crire un driver sp�cifique ??
    Myst�re
    Celui qui apporte une solution je lui paie une caisse de champagne


  12. #12
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Ah bah t'es rassurant !
    Je pensais que �a allait �tre compliqu� mais l�...de toute fa�on d�s que l'on touche � DirectX c'est la merde.

    Bon...en gros ce n'est pas gagn�...c'est �a ?

  13. #13
    mat.M
    Invit�(e)
    Par d�faut
    Citation Envoy� par liv
    Ah bah t'es rassurant !
    Je pensais que �a allait �tre compliqu� mais l�...de toute fa�on d�s que l'on touche � DirectX c'est la merde.

    Bon...en gros ce n'est pas gagn�...c'est �a ?

    euuhh je serais tent� de dire oui .... � moins que quelqu'un d'autre nous dise comment faire la m�me op�ration que fait DxDiag ( � savoir d�sactiver l'acc�l�ration mat�rielle )

  14. #14
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Oui en gros c'est �a. Je suis curieux de savoir quelles routines appelle ce fameux bouton de DxDiag.

  15. #15
    mat.M
    Invit�(e)
    Par d�faut
    Citation Envoy� par liv
    Oui en gros c'est �a. Je suis curieux de savoir quelles routines appelle ce fameux bouton de DxDiag.
    je pense que DxDiag interrroge en interne les drivers qui sont install�s
    Eventuellement les active ou les d�sactive .
    Sinon je n'ai pas trouv� d'API permettant de jouer sur l'acc�l�ration mat�rielle

  16. #16
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Tu imagines si il n'y avait qu'une m�thode permettant d'activer ou d�sactiver les drivers ? le pied...faut bien r�ver. En m�me temps faut tomber dessus.

    Je continue � chercher. Je sais en tous cas que pour DirectDraw il y a des choses similaires.

  17. #17
    mat.M
    Invit�(e)
    Par d�faut
    eh bien bonne chance

  18. #18
    liv
    liv est d�connect�
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    124
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 124
    Par d�faut
    Merci � toi. :o
    Je ne ferai peut-�tre pas la m�me t�te dans quelques temps.
    Ca sera plus de ce genre

Discussions similaires

  1. R�ponses: 4
    Dernier message: 30/07/2009, 12h08
  2. R�ponses: 2
    Dernier message: 05/03/2009, 10h57
  3. Comment activer/d�sactiver la touche �chap
    Par CBen dans le forum VBA Access
    R�ponses: 2
    Dernier message: 04/02/2008, 16h18
  4. Comment activer/d�sactiver les effets de flou de DWM? (FAQ)
    Par zubrow dans le forum Windows Vista
    R�ponses: 3
    Dernier message: 01/12/2007, 22h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo