2013-06-05 2 views
1

Bonjour J'ai eu des problèmes avec MonoGame lors de la construction, j'ai l'erreur glbind ... dans l'opengl32.dll, donc on m'a suggéré de trouver mon GUID et cela ressemble à une tâche simple mais je l'ai regardé dans les fichiers de dossiers de projet et ne peux pas trouver que j'ai trouvé un qui estOù trouver mon GUID sur ma solution C#

<ProjectGuid>{325BCA73-8459-49AF-9C31-D4A268BF8A1A}</ProjectGuid> 

mais je cherche un comme ça

<ProjectTypeGuids>{9B831FEF-F496-498F-9FE8-180DA5CB4258};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> 

ici est une image de mon dossier et le principal "collisions" fichier .csproj où j'ai trouvé le GUID. J'ai fait quelques recherches mais je ne peux pas sembler trouver une réponse quant à où regarder. HERE

Plus accuretly im cherche les Projecttypeguids je peux supprimer un d'entre eux pour voir si cela résout mon problème comme suggéré ici .... Je reconnais ce que je LIBELLEES au sommet est une sorte de vague désolé

Here

+0

La chose est, à peu près tout peut avoir * un GUID *, il est impossible de dire ce que * le * Le GUID que vous cherchez est à moins que vous ne nous en donniez le contexte - pour quoi en avez-vous besoin, qui a suggéré que vous en aviez besoin et quelle était leur formulation exacte? – millimoose

+0

J'ai édité ma question désolé c'était confus mais j'ai fourni un lien à ce que j'ai été suggéré de faire .. Autant que je sache que je veux localiser la balise et supprimer le monegame un et garder le C# –

+0

Well , si ce n'était pas Windows, je dirais "grep" pour ça. (Ou utilisez un éditeur de texte comme Sublime Text qui est prêt à faire une recherche de texte intégral sur une structure de répertoire. – millimoose

Répondre

0

La capture d'écran que vous avez liée à affiche un projet dans lequel aucun GUID de type n'est répertorié. Si elle est présente, la valeur est principalement utilisée par les outils de développement (par exemple, VS l'utilise pour déterminer les éléments à inclure dans les menus contextuels pour l'ajout de nouveaux éléments.) S'il n'y a pas de type de projet, votre projet fonctionnera toujours partie, mais vous rencontrerez probablement un comportement étrange dans votre IDE de votre choix.

Les valeurs de GUID de type de projet dans votre question sont correctes pour un projet qui est une application C# qui utilise le plug-in MonoGame. Si votre tag de projet manque dans votre fichier de projet, ajoutez-le vous-même avec les GUID que vous voulez que votre projet ait.

(La liste des GUIDs bien connus peuvent être trouvés here, bien que le monogame que je dû chercher sur Google.)

+0

oui j'ai essayé d'ajouter l'étiquette GUID spécifique avec le nombre C# et ça ne marche pas la construction et la version échoue toujours, et puis j'ai essayé d'ajouter que C# GUID au projet GUID et échoue je ne sais pas quoi faire. –

+0

pensez-vous que les GUID ont quelque chose à voir avec le Impossible de trouver un point d'entrée nommé 'glBindFramebuffer' dans la DLL 'opengl32.dll'. Erreur? –

+0

non, absolument pas. Cette erreur signifie que vous utilisez la mauvaise version de 'opengl32.dll' qui n'a pas le point d'entrée que vous essayez d'utiliser. Ceci est apparemment un bug connu dans MonoGame: https://github.com/mono/MonoGame/issues/998 –

1

Le premier exemple que vous avez donné est le GUID de votre projet. Par conséquent ProjectGuid.
La seconde est une liste des GUID des types de projet de votre projet. Par conséquent ProjectTypeGuids.

Si vous recherchez le GUID de votre projet, le premier exemple vous donne la bonne réponse.

+0

oh oui en relisant je reconnais que ma question est en quelque sorte vague j'ai été suggéré cette réponse si plus précisément je cherche le ProjectTypeGUID http://stackoverflow.com/questions/16879359/missing-project-sub-type-error- quand-essay-de-créer-un-nouveau-monogame-project/16908711 # comment24440527_16908711 –

0

d'abord vous n'avez pas mentionné ce que vous utilisez WinForms ou WPF. OK, quoi que ce soit. Le ProjectTypeGuids n'est pas supporté dans les winforms, vous pouvez les trouver si vous utilisez wpf.

Si vous utilisez WPF, vous pouvez utiliser ce code:

public string GetProjectTypeGuids(EnvDTE.Project proj) 
     { 

     string projectTypeGuids = ""; 
     object service = null; 
     Microsoft.VisualStudio.Shell.Interop.IVsSolution solution = null; 
     Microsoft.VisualStudio.Shell.Interop.IVsHierarchy hierarchy = null; 
     Microsoft.VisualStudio.Shell.Interop.IVsAggregatableProject aggregatableProject = null; 
     int result = 0; 

     service = GetService(proj.DTE, typeof(Microsoft.VisualStudio.Shell.Interop.IVsSolution)); 
     solution = (Microsoft.VisualStudio.Shell.Interop.IVsSolution)service; 

     result = solution.GetProjectOfUniqueName(proj.UniqueName, hierarchy); 

     if (result == 0) 
     { 
     aggregatableProject = (Microsoft.VisualStudio.Shell.Interop.IVsAggregatableProject) hierarchy; 
     result = aggregatableProject.GetAggregateProjectTypeGuids(projectTypeGuids); 
     } 

     return projectTypeGuids; 

    } 

    public object GetService(object serviceProvider, System.Type type) 
    { 
     return GetService(serviceProvider, type.GUID); 
    } 

    public object GetService(object serviceProviderObject, System.Guid guid) 
    { 

     object service = null; 
     Microsoft.VisualStudio.OLE.Interop.IServiceProvider serviceProvider = null; 
     IntPtr serviceIntPtr; 
     int hr = 0; 
     Guid SIDGuid; 
     Guid IIDGuid; 

     SIDGuid = guid; 
     IIDGuid = SIDGuid; 
     serviceProvider = (Microsoft.VisualStudio.OLE.Interop.IServiceProvider)serviceProviderObject; 
     hr = serviceProvider.QueryService(SIDGuid, IIDGuid, serviceIntPtr); 

     if (hr != 0) 
     { 
     System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(hr); 
     } 
     else if (!serviceIntPtr.Equals(IntPtr.Zero)) 
     { 
     service = System.Runtime.InteropServices.Marshal.GetObjectForIUnknown(serviceIntPtr); 
     System.Runtime.InteropServices.Marshal.Release(serviceIntPtr); 
     } 

     return service; 
    } 

il est de here

Questions connexes