Delijohn Δημοσιεύτηκε Ιούλιος 15, 2014 #1 Κοινοποίηση Δημοσιεύτηκε Ιούλιος 15, 2014 Έχω ένα θεματάκι με μια εργασιούλα που βοηθάω τον αδερφό μου ρε guys. Του έδωσαν να κάνει upgrade ένα προτζεκτάκι από vb6 σε vb.net με το visual studio 2008. Ως εδώ όλα καλά, το έφτιαξα μετά από πολλές αλλαγές και τρέχει. Σκεφτείτε πως είναι μια απλή φορμίτσα η οποία παίρνει ένα specific format txt και το μετατρέπει σε .mdb αρχείο. Το διόρθωσα στο pc μου που έχω windows 8.1 και πάω μετά να το τρέξω στου αδερφού μου το pc με τα windows 7. Ε τίποτα... σκάει σε ένα άκυρο σημείο, για άκυρο λόγο και για με άκυρο error (προφανώς δεν είναι λύση να παίξει σε windows 8.1) Compile Options έχω αυτά: Link to comment Share on other sites More sharing options...
nucleus Ιούλιος 15, 2014 #2 Κοινοποίηση Ιούλιος 15, 2014 Στο target CPU δεν έχει και Any CPU option?Δεν δοκιμάζεις μια και αυτό?Το error τι λέει ακριβώς? Link to comment Share on other sites More sharing options...
Delijohn Ιούλιος 15, 2014 Author #3 Κοινοποίηση Ιούλιος 15, 2014 Πριν αλλάξω οτιδήποτε.. στο pc με τα win7 έσκαγε εδώ: μπαίνοντας στη λούπα, έλεγε κάτι περί τιμών Null σε primary key κλπ.. δεκτό σαν λάθος μα σε μένα πέρναγε κανονικά από εκεί, που σημαίνει ότι απλά κάποια μεταβλητή δεν έπαιρνε τιμή κ πήγαινε κ έβαζε null.. Όταν βάζω any cpu, πετάει αυτό: An error occurred creating the form. See Exception.InnerException for details. The error is: Retrieving the COM class factory for component with CLSID {00000100-0000-0010-8000-00AA006D2EA4} failed due to the following error: 80040154. θα έπαιρνα όρκο πως σε μένα έπαιζε κι έτσι αλλά από όταν το γύρισα σε x86 για compatibility, τώρα σκάει και σε μένα με το any cpu. Link to comment Share on other sites More sharing options...
nucleus Ιούλιος 15, 2014 #4 Κοινοποίηση Ιούλιος 15, 2014 Στις περισσότερες λύσεις για το error προτείνεται το build target σε x86 οπότε άκυρο το any cpu.Πως ακριβώς φτιάχνεις το mdb (Access Database σωστά?).Χρησιμοποιείς DAO?Επίσης και τα win 7 και τα win 8 είναι 64 bit? Link to comment Share on other sites More sharing options...
Delijohn Ιούλιος 15, 2014 Author #5 Κοινοποίηση Ιούλιος 15, 2014 Ναι ναι με dao.. έχει μια μεγάλη λούπα που "διαβάζει" το txt σύμφωνα με το φορμάτ που το έχουν φτιάξει και μετά πάει και τα περνάει στο .mdb. Access είναι ναι!Και τα 2 64bitα. Και με την x64 επιλογή πετάει το ίδιο error, ακόμα κ σε μένα. Link to comment Share on other sites More sharing options...
nucleus Ιούλιος 15, 2014 #6 Κοινοποίηση Ιούλιος 15, 2014 Data Access Technologies Road MapData Access Objects (DAO): DAO provides access to JET (Access) databases. This API can be used from Microsoft Visual Basic, Microsoft Visual C++, and scripting languages. It was included with Microsoft Office 2000 and Office XP. DAO 3.6 is the final version of this technology. It will not be available on the 64-bit Windows operating system.Να προτείνω αλλαγή σε ADO.ΝΕΤ για την σύνδεση με το mdb αρχείο. Δεν έχω ιδέα γιατί παίζει η εφαρμογή σε 8 x64 και όχι και στα 7 x64.EDIT:Ποιά έκδοση του Office είναι εγκατεστημένη στο κάθε λειτουργικό? Link to comment Share on other sites More sharing options...
Delijohn Ιούλιος 15, 2014 Author #7 Κοινοποίηση Ιούλιος 15, 2014 Το έχω δοκιμάσει και με ADO.Net.. βασικά τώρα παίζει και με τα δύο.. Με το πρώτο φτιάχνει το αρχείο και με το δεύτερο το γεμίζει. μη ρωτάς πώς και γιατί.. δεν έπαιζαν αλλιώς.. ο κώδικας έχει φάει πολλές αλλαγές απλά για να τρέχει εγώ έχω το 2007.. ο αδερφός μου έχει το 2013.. λες να του βάλω τα 2007 μπας και...;;; Link to comment Share on other sites More sharing options...
nucleus Ιούλιος 15, 2014 #8 Κοινοποίηση Ιούλιος 15, 2014 Για δοκίμασε μια να αλλάξεις τον provider από Microsoft.Jet.OLEDB.4.0 σε Microsoft.ACE.OLEDB.12.0 Link to comment Share on other sites More sharing options...
Delijohn Ιούλιος 15, 2014 Author #9 Κοινοποίηση Ιούλιος 15, 2014 καμία διαφορά :...: (και στα 2 pc) Link to comment Share on other sites More sharing options...
Delijohn Ιούλιος 15, 2014 Author #10 Κοινοποίηση Ιούλιος 15, 2014 κάτι έγινε τώρα και μου πετάει αυτό και δεν τρέχει σε κανένα από τα 2.. An error occurred creating the form. See Exception.InnerException for details. The error is: Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))σκάει πριν φορτώσει καν το πρόγραμμα.. και δεν ανοίγουν τα designer της εφαρμογής.. μέχρι απεγκατέστησα ότι είχα από microsoft developing και ξανά install έκανα.. :cry: Link to comment Share on other sites More sharing options...
nucleus Ιούλιος 15, 2014 #11 Κοινοποίηση Ιούλιος 15, 2014 Αυτό το έβγαλε αφού αλλάξαμε από jet.oledb σε Microsoft.ACE.OLEDB.12.0? Link to comment Share on other sites More sharing options...
Delijohn Ιούλιος 15, 2014 Author #12 Κοινοποίηση Ιούλιος 15, 2014 Όχι, καμία σχέση.. το έβγαλε ξαφνικά.. μάλλον πέρασε τπτ updates, δεν ξέρω.. τώρα προσπαθώ σε νέο project να περάσω μία-μία τις φόρμες μπας και παίξουν.. Link to comment Share on other sites More sharing options...
nucleus Ιούλιος 15, 2014 #13 Κοινοποίηση Ιούλιος 15, 2014 Κράτα από την VB6 το parsing του txt αρχείου.και μετά System.Data.OleDb Namespace ()για την πρόσβαση της βάσης. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.