ThreadBoard ArchivesSite FeaturesActiveworlds SupportHistoric Archives |
Programing error (Bots)
Programing error // BotskillamoOct 3, 2001, 4:38am
Hi,
I have Microsoft 5.0 C++ and i am trying to compile the sample greeter bot. First off i have 19 gigs of free space i ahve tried re download the lib many times. Also i have tried making a new progect many times. I will send my log so you can see what the error is please reply! Deleting intermediate files and output files for project 'bot01 - Win32 Debug'. --------------------Configuration: bot01 - Win32 Debug-------------------- Compiling... bot.cpp Linking... ..\Aw.lib : fatal error LNK1106: invalid file or disk full: cannot seek to 0x3bafad3f Error executing link.exe. bot01.exe - 1 error(s), 0 warning(s) kahOct 4, 2001, 6:30pm
uhm... do you have a *CLUE* to how C++ works?? I doubt it, and in that case,
don't comment it. KAH [View Quote] cozmoOct 4, 2001, 9:48pm
actually yes i do....and as i see it you don't have to use the .lib if you
don't want to [View Quote] john viperOct 5, 2001, 12:10am
umm... You cannot access the commands within the DLL without the
lib........ unless you really want to write your own lib, and I doubt that is the caase here. -JV [View Quote] > actually yes i do....and as i see it you don't have to use the .lib if you > don't want to > [View Quote] -- John Viper (#296714) jviper at jtsoft.net http://www.jtsoft.net "Life on Earth may be expensive, but it does include a free trip around the sun..." -anonymous john viperOct 5, 2001, 12:11am
Can you compile any other programs separately? I am not exactly a VC
expert, but it seems to me that there is a problem with your LINK.EXE file. -JV [View Quote] > Hi, > I have Microsoft 5.0 C++ and i am trying to compile the sample greeter > bot. First off i have 19 gigs of free space i ahve tried re download the lib > many times. Also i have tried making a new progect many times. I will send > my log so you can see what the error is please reply! > > Deleting intermediate files and output files for project 'bot01 - Win32 > Debug'. > --------------------Configuration: bot01 - Win32 Debug-------------------- > Compiling... > bot.cpp > Linking... > .\Aw.lib : fatal error LNK1106: invalid file or disk full: cannot seek to > 0x3bafad3f > Error executing link.exe. > > bot01.exe - 1 error(s), 0 warning(s) > > > > -- John Viper (#296714) jviper at jtsoft.net http://www.jtsoft.net "Life on Earth may be expensive, but it does include a free trip around the sun..." -anonymous ananasOct 5, 2001, 2:20am
You can !
- LoadLibrary() loads the dynamic link library into memory - GetProcAddress() gives you access to the functions - FreeLibrary() unloads the library Pendant in Unix : - dlopen() loads the shared library into memory - dlsym() gives you access to the functions - dlclose() unloads the library Actually the it is only loaded if it isn't already in memory, otherwise the reference count is increased. Unload is only done if there are no references left. The access functions return pointers to the functions that you can directly use to call the functions. The declarations of the pointers that receive the result have to contain the exact prototypes of the function in pointer form. One trap is that all linkers have different ideas of the name argument for GetProcAddress(), it is the internal name and depends very much on calling convention (pascal, cdecl, stdcall) and some linkers append a brief parameter description for the prototype, I think the format is itoa(lengt of argument list) + ' at ' + atoi(resultlength) If the DLL is your own it's a good idea to have aliases for these weird names. [View Quote] -- "_ | /\ \ / __/ /_ john viperOct 8, 2001, 8:23am
Wow. Learn something new every day :-)
-JV [View Quote] > You can ! > > - LoadLibrary() loads the dynamic link library into memory > - GetProcAddress() gives you access to the functions > - FreeLibrary() unloads the library > > Pendant in Unix : > > - dlopen() loads the shared library into memory > - dlsym() gives you access to the functions > - dlclose() unloads the library > > > Actually the it is only loaded if it isn't already in memory, > otherwise the reference count is increased. Unload is only > done if there are no references left. > > The access functions return pointers to the functions that > you can directly use to call the functions. The declarations > of the pointers that receive the result have to contain the > exact prototypes of the function in pointer form. > > > One trap is that all linkers have different ideas of the name > argument for GetProcAddress(), it is the internal name and > depends very much on calling convention (pascal, cdecl, stdcall) > and some linkers append a brief parameter description for the > prototype, I think the format is > itoa(lengt of argument list) + ' at ' + atoi(resultlength) > > If the DLL is your own it's a good idea to have aliases > for these weird names. > > [View Quote] -- John Viper (#296714) jviper at jtsoft.net http://www.jtsoft.net "Life on Earth may be expensive, but it does include a free trip around the sun..." -anonymous |