/********************************************************************************** Joona Vuolle, 1998 - Dynaaminen DLL-aliohjelmien käyttö ***********************************************************************************/ #include #include #include typedef int (__stdcall LPONKOPALINDROMI) (const char *); static LPONKOPALINDROMI *OnkoPalindromi; int main(void) { HINSTANCE hDll; char s[200]; //Ladataan DLL hDll = LoadLibrary("pdromi.dll"); if(!hDll) { cout << "Ei saa ladattua DLL-tiedostoa" << endl; return 1; }; //Otetaan kahva functioon OnkoPalindromi = (LPONKOPALINDROMI*)( GetProcAddress(hDll,"onko_palindromi") ); if(!OnkoPalindromi) { cout << "Ei saa ladattua aliohjelmaa" << endl; FreeLibrary(hDll); return 2; }; cout << "Anna merkkijonoja, merkki q lopettaa" << endl << endl << endl; // Kysytään merkkijonoja ja testataan aina niitä while(1==1) { cout << "Anna merkkijono: " << flush; cin.getline(s,sizeof(s)-1); if(s[0]=='q' || s[0]=='Q') break; if(OnkoPalindromi(s)) cout << s << " on palindromi" << endl << endl; else cout << s << " ei ole palindromi" << endl << endl; }; FreeLibrary(hDll); return 0; };