<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>XNA Development</title><link>https://www.dotnetzone.gr:443/cs/forums/115/ShowForum.aspx</link><description>Ανάπτυξη εφαρμογών/παιχνιδιών βασισμένα στο Microsoft XNA Framework.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Debug DirectX εφαρμογών με το DirectX SDK και το Visual Studio 2010</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/59306.aspx</link><pubDate>Tue, 29 Jun 2010 16:53:40 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:59306</guid><dc:creator>panagiotis_georgiadis</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/59306.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=115&amp;PostID=59306</wfw:commentRss><description>Ευχαριστώ για την απάντηση.&lt;br&gt;Το ότι παίρνω Buffer Overflow επειδή είναι τσεκαρισμένο το Break on memory leak το έχω καταλάβει ήδη. Δυστυχώς όμως δεν γίνεται να βρεις Direct3D memory leaks χωρίς την επιλογή αυτή. Δεν χρειάζεται να πω και το προφανές, ότι δεν θέλω καθόλου απώλεια μνήμης από την εφαρμογή μου.&lt;br&gt;Όντως το PIX βοηθάει πολύ στο debugging, όχι όμως πάντα. Δεν γίνεται να αντικαταστήσω το Visual Studio με το PIX πλήρως. Και το να κυνηγάς memory leaks με το PIX δε θα το συνιστούσα - είναι σα να ψαρεύεις με δυναμίτη (ή με τα χέρια, κάτι τέτοιο, πάντως όχι με καλάμι - δεν είμαι καλός στις παρομοιώσεις ούτε στο ψάρεμα).&lt;br&gt;Και αν σκέφτεται κανείς να απαντήσει ότι μπορεί να φύγει το πρόβλημα με απενεργοποίηση του Visual experience-hardware acceleration στο Visual Studio, το δοκίμασα και δεν κάνει τίποτα. Απλά τότε θα χρησιμοποιήσει Software Renderer, αλλά ούτως ή άλλως χρησιμοποιείται το περιβάλλον DirectX, και πάλι θα τα τινάξει όταν προσπαθήσει να κάνει GetAdapterDisplayMode() ή TestCoOperativeLevel() στο IDirect3DDevice9.&lt;br&gt;&lt;br&gt;Για να πω την αλήθεια περίμενα περισσότερη προσοχή από το Visual Studio Team σε αυτά τα θέματα, τουλάχιστον κανένα κρυφό registry setting που το κάνει λίγο πιο έξυπνο, αντί για τα χαζά "easter egg" τύπου settings, σαν αυτό που ενεργοποιεί τις κάθετες διακεκκομένες γραμμές στον text editor :-)&lt;br&gt;&lt;br&gt;anyway ευχαριστώ. Ίσως δοκιμάσω να το τρέξω σε Compatibility mode, αν και δεν ελπίζω πολλά.&lt;br&gt;</description></item><item><title>Απ: Debug DirectX εφαρμογών με το DirectX SDK και το Visual Studio 2010</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/59303.aspx</link><pubDate>Tue, 29 Jun 2010 09:20:58 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:59303</guid><dc:creator>darklynx</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/59303.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=115&amp;PostID=59303</wfw:commentRss><description>Δεν μπορώ να σου πω στα σίγουρα μια που χρησιμοποιώ VS2008 για τις εφαρμογές μου σε DirectX,αλλά η λύση που ακολούθησες μου φαίνεται η καλύτερη.Όσον αφορά το σφάλμα που λαμβάνεις (buffer overflow exception) δες αν έχεις τσεκαρισμένο το "Break on memory leak" στο DirectX Control Panel και έλεγξε μήπως συσχετίζεται με αυτό.&lt;div&gt;Μια άλλη λύση που θα μπορούσες να σκεφτείς είναι να κάνεις debug την εφαρμογή σου με το PIX,το εργαλείο που παρέχεται μαζί με το DirectX SDK,ίσως περιστασιακά σε βολέψει.&lt;br&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;</description></item><item><title>Debug DirectX εφαρμογών με το DirectX SDK και το Visual Studio 2010</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/59291.aspx</link><pubDate>Mon, 28 Jun 2010 18:13:58 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:59291</guid><dc:creator>panagiotis_georgiadis</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/59291.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=115&amp;PostID=59291</wfw:commentRss><description>Δεν ξέρω που να το βάλω αυτό το θέμα, νομίζω ότι κολλάει καλύτερα στην κατηγορία XNA.&lt;br&gt;Θέλω απλά να κάνω μια παρατήρηση, και ίσως έμμεσα να λάβω απάντηση για το πρόβλημά μου.&lt;br&gt;Για να δουλέψει κανείς πάνω σε μια εφαρμογή DirectX (προσωπικά δουλεύω με unmanaged κώδικα) χρειάζεται το DirectX SDK (εκτός αν ξέρει απ'έξω όλο το API). Επίσης, με το SDK εγκαθιστάται στο σύστημα και το DirectX Control Panel, όπου μπορεί κανείς να θέσει τα debug DLLs του Direct3D εν ενεργεία και να λαμβάνει μηνύματα στο output Window του Visual Studio που προέρχονται από το DirectX.&lt;br&gt;Το πρόβλημα εμφανίζεται τη στιγμή που (δεν) διαπιστώνει κανείς ότι το Visual Studio 2010 είναι πλέον εφαρμογή WPF, άρα χρησιμοποιεί κι αυτό DirectX κώδικα (φαίνεται από την προεπιλογή Tools\Options\General\Visual Experience "...hardware acceleration...")&lt;br&gt;Όταν λοιπόν λες στο DirectX να μπει σε debug mode, κάθε εφαρμογή που τρέχει στο PC θα χρησιμοποιήσει επίσης DirectX debug. Και το Visual Studio θα αρχίσει να γκρινιάζει και να κρασάρει. Υπάρχει ένα σχετικό bug στο Microsoft Connect, και λένε ότι πρόκειται για known issue.&lt;br&gt;Ένας τρόπος που γλιτώνει τις πολλές φασαρίες είναι ο εξής:&lt;br&gt;* DirectX Control Panel - set Direct3D Retail mode&lt;br&gt;* αντιγραφή του d3d9d.dll από το φάκελο του SDK στο φάκελο όπου δημιουργείται το .exe ή το .dll της εφαρμογής που δουλεύετε.&lt;br&gt;* μετονομασία αυτού του &lt;b&gt;d3d9d.dll&lt;/b&gt; σε &lt;b&gt;d3d9.dll&lt;/b&gt;&lt;br&gt;Έτσι στην ουσία ξεγελάτε τον debugger. Αλλά το κρασάρισμα αν και τουλάχιστον μειώνεται, δεν αποφεύγεται τελείως. Δέχομαι πού και πού κάτι crash reports με περιγραφή "Problem Event Name:&lt;span style="white-space:pre;"&gt; &lt;/span&gt;BEX".&lt;br&gt;Με αυτό το post θα ήθελα να κοινοποιήσω την εμπειρία μου, και ίσως αν υπάρχει κανείς με περισσότερες γνώσεις στο αντικείμενο να με βοηθήσει να απαλλαγώ από τα crash εντελώς, αν και η κατάσταση έτσι είναι ανεκτή.&lt;br&gt;</description></item></channel></rss>