dll εναντίον exe
* DLL (Βιβλιοθήκη δυναμικής σύνδεσης): Ένα DLL είναι μια βιβλιοθήκη λειτουργιών και πόρων που μπορούν να χρησιμοποιηθούν από πολλαπλά προγράμματα. Δεν είναι ένα εκτελέσιμο πρόγραμμα από μόνο του.
* exe (εκτελέσιμο): Ένα αρχείο EXE περιέχει τις οδηγίες για ένα αυτόνομο πρόγραμμα που μπορεί να εκτελεστεί απευθείας.
Τι μπορείτε να επιτύχετε:
1. Δημιουργήστε ένα exe που * χρησιμοποιεί * το dll: Μπορείτε να δημιουργήσετε ένα εκτελέσιμο αρχείο που * φορτώνει * και χρησιμοποιεί τις λειτουργίες μέσα στο DLL. Αυτός είναι ο τυπικός τρόπος χρήσης DLL. Θα χρειαστεί να χρησιμοποιήσετε μια γλώσσα προγραμματισμού (όπως C ++, C#, Python, κλπ.) Για:
- Συμπεριλάβετε το DLL στο έργο σας.
- Καλέστε τις λειτουργίες από το DLL μέσα στον κωδικό σας.
- Συγκεντρώστε τον κωδικό σας σε ένα αρχείο EXE.
2. Δημιουργήστε ένα περιτύλιγμα exe: Εάν θέλετε να κάνετε το DLL ευκολότερο στη χρήση, μπορείτε να δημιουργήσετε ένα απλό πρόγραμμα EXE που:
- Φορτώνει το DLL.
- Παρέχει μια διεπαφή χρήστη ή επιχειρήματα γραμμής εντολών για να αλληλεπιδράσουν με τις λειτουργίες του DLL.
Παράδειγμα (C ++):
Ας πούμε ότι έχετε ένα dll που ονομάζεται `myLibrary.dll` με μια συνάρτηση που ονομάζεται` calculatesum ':
`` c ++
// myLibrary.cpp (συντάχθηκε στο myLibrary.dll)
#include
int calculatesum (int a, int b) {
επιστροφή a + b;
}
`` `
Εδώ μπορείτε να δημιουργήσετε ένα exe που χρησιμοποιεί `mylibrary.dll`:
`` c ++
// main.cpp
#include
typedef int (*calculatesumFunction) (int, int);
int main () {
// φορτώστε το dll
Hmodule hmodule =loadLibrary ("myLibrary.dll");
αν (hmodule ==null) {
// Σφάλμα χειρισμού
επιστροφή 1;
}
// Λάβετε τη διεύθυνση λειτουργίας
CalculatesUmFunction Sumfunction =(CalculatesUmFunction) GetProcaddress (hmodule, "Calculatesum");
αν (sumfunction ==null) {
// Σφάλμα χειρισμού
επιστροφή 1;
}
// καλέστε τη λειτουργία από το dll
int result =sumfunction (5, 3);
printf ("sum:%d \ n", αποτέλεσμα);
// Ελευθερώστε το dll
Freelibrary (Hmodule);
επιστροφή 0;
}
`` `
ΣΗΜΑΝΤΙΚΟ:
* DLLS είναι συγκεκριμένη πλατφόρμα. Ένα DLL που καταρτίζεται για ένα λειτουργικό σύστημα (όπως τα Windows) δεν θα λειτουργήσει σε άλλο (όπως το MacOS ή το Linux).
* dlls εξαρτώνται από άλλες βιβλιοθήκες. Εάν το DLL βασίζεται σε άλλες βιβλιοθήκες, θα πρέπει να συμπεριλάβετε αυτά του έργου σας ή να βεβαιωθείτε ότι είναι διαθέσιμα στο σύστημα προορισμού.
Εάν χρειάζεστε πιο συγκεκριμένη βοήθεια, παρακαλούμε να δώσετε λεπτομέρειες σχετικά με το DLL που έχετε, τη γλώσσα προγραμματισμού που χρησιμοποιείτε και τη λειτουργικότητα που θέλετε να επιτύχετε.
Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα