Jump to content



VB6 --> VB.NET runs on 8.1/not on 7


Recommended Posts

Έχω ένα θεματάκι με μια εργασιούλα που βοηθάω τον αδερφό μου ρε guys.

Του έδωσαν να κάνει upgrade ένα προτζεκτάκι από vb6 σε vb.net με το visual studio 2008.

Ως εδώ όλα καλά, το έφτιαξα μετά από πολλές αλλαγές και τρέχει.

Σκεφτείτε πως είναι μια απλή φορμίτσα η οποία παίρνει ένα specific format txt και το μετατρέπει σε .mdb αρχείο.

Το διόρθωσα στο pc μου που έχω windows 8.1 και πάω μετά να το τρέξω στου αδερφού μου το pc με τα windows 7.

Ε τίποτα... σκάει σε ένα άκυρο σημείο, για άκυρο λόγο και για με άκυρο error :hmm:

(προφανώς δεν είναι λύση να παίξει σε windows 8.1)

Compile Options έχω αυτά:

o0d9QGV.png

Link to comment
Share on other sites

Πριν αλλάξω οτιδήποτε.. στο pc με τα win7 έσκαγε εδώ:

mCnsAbC.png

μπαίνοντας στη λούπα, έλεγε κάτι περί τιμών 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

Στις περισσότερες λύσεις για το error προτείνεται το build target σε x86 οπότε άκυρο το any cpu.

Πως ακριβώς φτιάχνεις το mdb (Access Database σωστά?).Χρησιμοποιείς DAO?

Επίσης και τα win 7 και τα win 8 είναι 64 bit?

Link to comment
Share on other sites

Ναι ναι με dao.. έχει μια μεγάλη λούπα που "διαβάζει" το txt σύμφωνα με το φορμάτ που το έχουν φτιάξει και μετά πάει και τα περνάει στο .mdb. Access είναι ναι!

Και τα 2 64bitα. Και με την x64 επιλογή πετάει το ίδιο error, ακόμα κ σε μένα.

Link to comment
Share on other sites

Data Access Technologies Road Map

Data 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 είναι εγκατεστημένη στο κάθε λειτουργικό?

Έγινε επεξεργασία από nucleus
Link to comment
Share on other sites

Το έχω δοκιμάσει και με ADO.Net.. βασικά τώρα παίζει και με τα δύο..

Με το πρώτο φτιάχνει το αρχείο και με το δεύτερο το γεμίζει.

μη ρωτάς πώς και γιατί.. δεν έπαιζαν αλλιώς.. ο κώδικας έχει φάει πολλές αλλαγές απλά για να τρέχει :p

4W2DWDI.png

εγώ έχω το 2007.. ο αδερφός μου έχει το 2013.. λες να του βάλω τα 2007 μπας και...;;;

Link to comment
Share on other sites

κάτι έγινε τώρα και μου πετάει αυτό και δεν τρέχει σε κανένα από τα 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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Δημιουργία...

Important Information

Ο ιστότοπος theLab.gr χρησιμοποιεί cookies για να διασφαλίσει την καλύτερη εμπειρία σας κατά την περιήγηση. Μπορείτε να προσαρμόσετε τις ρυθμίσεις των cookies σας , διαφορετικά θα υποθέσουμε ότι είστε εντάξει για να συνεχίσετε.