Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c > #125934
| From | Ian Collins <ian-news@hotmail.com> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: Toy code for currency handling |
| Date | 2018-01-29 20:56 +1300 |
| Message-ID | <fd82diFnvamU6@mid.individual.net> (permalink) |
| References | (8 earlier) <sh8t6d53drbs574ji4e0ogom5s3a8ta3jn@4ax.com> <fd7pqfFnvamU3@mid.individual.net> <ujct6d1cs4fako99i4r11557ascnapmg8v@4ax.com> <fd7upfFnvamU5@mid.individual.net> <9gjt6d1v9jbt50itlp8tpert9hkfnqgn98@4ax.com> |
On 01/29/2018 08:38 PM, Robert Wessel wrote: > On Mon, 29 Jan 2018 19:54:39 +1300, Ian Collins <ian-news@hotmail.com> > wrote: > >> On 01/29/2018 06:45 PM, Robert Wessel wrote: >>> On Mon, 29 Jan 2018 18:29:50 +1300, Ian Collins <ian-news@hotmail.com> >>> wrote: >>> >>>> On 01/29/2018 06:23 PM, Robert Wessel wrote: >>>>> >>>>> No it's not. The linker will find MessageBoxA() in the import library >>>>> user32.lib. The import library contains the specification of where >>>>> MessageBoxA() is. >>>>> >>>>> Without the __declspec(dllimport) the compiler will just generate call >>>>> to MessageBoxA: >>>>> >>>>> call MessageBoxA >>>>> >>>>> and the linker will create a thunk for that that contains one indirect >>>>> jump: >>>>> >>>>> MessageBoxA: jmp drowd ptr __imp_MessageBoxA >>>>> >>>>> (Note: I've ignored some decorations on the above for simplicity.) >>>> >>>> Why does windows make this stuff so hard? No wonder poor old bartc gets >>>> confused. >>> >>> >>> It really doesn't. The item in the import library really just says >>> that abcdef resolves to somedllname:somefunctionname. The linker >>> processes that in the obvious way. If you create a DLL, the linker >>> will automatically build an import library that other executables can >>> link to access your DLL. >>> >>> The bits about patch tables and thunks that get used under the hood to >>> make run-time linking hang together is actually pretty similar in *nix >>> and Windows. >>> >>> A major difference between *nix and Windows is how much gets exported >>> by default, and that *nix puts most of what gets exported into a flat >>> namespace. I personally don't find the *nix choices to be superior, >>> but people so rarely ask me how I feel about these things. And rather >>> obviously, both approaches work just fine (but they are *different*). >> >> The biggest problem I have with the Windows way is it makes interposing >> functions nigh on impossible. In UNIX land if you want to interpose a >> library function, you just define a function with the correct signature >> in your executable and it will be used in preference to the function in >> the library. > > Other than with a library function tagged __declspec(dllimport), that > generally works. If the symbol is already present, the linker won't > search the libraries for a resolution. It more or less works with > __declspec(dllimport), but you'll get a warning from the compiler that > the actual definition of the function has a different signature (than > the declaration). Still, it could be better, and I'm not sure I know > that the correct behavior is actually guaranteed. It was those warnings that scared me off! -- Ian.
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar
Re: Toy code for currency handling David Thompson <dave.thompson2@verizon.net> - 2018-01-21 11:53 -0500
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-21 11:44 -0800
Re: Toy code for currency handling Keith Thompson <kst-u@mib.org> - 2018-01-21 12:24 -0800
Re: Toy code for currency handling herrmannsfeldt@gmail.com - 2018-01-23 21:03 -0800
Re: Toy code for currency handling Jorgen Grahn <grahn+nntp@snipabacken.se> - 2018-01-24 15:02 +0000
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-24 08:45 -0800
Re: Toy code for currency handling Keith Thompson <kst-u@mib.org> - 2018-01-24 11:40 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-24 14:52 -0600
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-24 13:05 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-24 13:12 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 01:04 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-24 19:17 -0600
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-24 17:33 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 12:14 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 04:31 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 13:03 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 05:28 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 05:37 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 05:43 -0800
Re: Toy code for currency handling mark.bluemel@gmail.com - 2018-01-25 05:57 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 15:48 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 08:32 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 10:56 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 21:28 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 15:10 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 06:14 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 06:38 -0800
Re: Toy code for currency handling gordonb.ma9h0@burditt.org (Gordon Burditt) - 2018-01-24 21:53 -0600
Re: Toy code for currency handling scott@slp53.sl.home (Scott Lurndal) - 2018-01-25 18:05 +0000
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 18:16 +0000
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-26 07:30 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-25 22:08 +0000
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-26 20:00 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-26 11:31 +0000
Re: Toy code for currency handling scott@slp53.sl.home (Scott Lurndal) - 2018-01-26 15:51 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-26 10:32 -0600
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-26 08:50 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-26 13:11 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-26 18:32 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-26 13:07 -0600
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-27 09:43 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-26 21:44 +0000
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-27 11:02 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-27 00:46 +0000
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-28 09:19 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-27 21:19 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-27 14:14 -0800
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-28 11:21 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-27 22:32 +0000
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-28 12:16 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 00:44 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 04:13 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 13:56 +0000
Re: Toy code for currency handling Malcolm McLean <malcolm.arthur.mclean@gmail.com> - 2018-01-28 06:12 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 06:43 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 15:40 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 07:56 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 16:12 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 08:34 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 16:53 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 09:30 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 09:48 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-28 23:23 -0600
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-29 18:29 +1300
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-28 23:45 -0600
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-29 19:54 +1300
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-29 01:38 -0600
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-29 20:56 +1300
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-29 20:34 -0600
Re: Toy code for currency handling "Chris M. Thomasson" <invalid_chris_thomasson@invalid.invalid> - 2018-01-29 21:46 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-28 23:34 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 12:02 +0000
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 12:33 +0000
Re: Toy code for currency handling Richard Damon <Richard@Damon-Family.org> - 2018-01-29 08:30 -0500
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 14:08 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-29 19:36 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-30 11:49 +0000
Re: Toy code for currency handling already5chosen@yahoo.com - 2018-01-30 04:45 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-30 13:04 +0000
Re: Toy code for currency handling already5chosen@yahoo.com - 2018-01-30 05:17 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-30 14:23 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-30 11:39 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-30 18:23 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-30 18:25 -0600
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-31 07:56 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-31 12:56 -0600
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-31 13:09 -0800
Re: Toy code for currency handling scott@slp53.sl.home (Scott Lurndal) - 2018-01-31 21:35 +0000
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-31 16:45 -0800
Re: Toy code for currency handling David Brown <david.brown@hesbynett.no> - 2018-02-01 08:59 +0100
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-02-01 02:40 -0600
Re: Toy code for currency handling David Brown <david.brown@hesbynett.no> - 2018-02-01 10:13 +0100
Re: Toy code for currency handling scott@slp53.sl.home (Scott Lurndal) - 2018-02-01 14:49 +0000
Re: Toy code for currency handling David Brown <david.brown@hesbynett.no> - 2018-02-01 16:13 +0100
Re: Toy code for currency handling supercat@casperkitty.com - 2018-02-01 09:05 -0800
Re: Toy code for currency handling David Brown <david.brown@hesbynett.no> - 2018-02-01 22:07 +0100
Re: Toy code for currency handling supercat@casperkitty.com - 2018-02-01 15:49 -0800
Re: Toy code for currency handling David Brown <david.brown@hesbynett.no> - 2018-02-02 13:13 +0100
Re: Toy code for currency handling already5chosen@yahoo.com - 2018-01-30 05:30 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-30 10:48 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 12:59 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-29 20:26 -0600
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-29 20:36 -0600
Re: Toy code for currency handling mark.bluemel@gmail.com - 2018-01-30 00:34 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-30 11:33 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-30 11:49 -0600
Re: Toy code for currency handling jameskuyper@verizon.net - 2018-01-30 12:03 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-30 17:40 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-30 12:56 +0000
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-30 11:28 -0600
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-31 19:19 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 04:16 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 13:40 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 06:35 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 07:24 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-28 15:24 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-28 07:44 -0800
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-29 18:34 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 12:21 +0000
Re: Toy code for currency handling Ian Collins <ian-news@hotmail.com> - 2018-01-30 07:59 +1300
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 19:56 +0000
Re: Toy code for currency handling scott@slp53.sl.home (Scott Lurndal) - 2018-01-29 20:53 +0000
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-29 21:52 +0000
Re: Toy code for currency handling Richard Damon <Richard@Damon-Family.org> - 2018-01-27 18:32 -0500
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-27 13:22 -0600
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-26 13:23 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-26 13:41 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-26 14:12 -0800
Re: Toy code for currency handling bartc <bc@freeuk.com> - 2018-01-26 22:23 +0000
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-26 14:44 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-26 15:28 -0800
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-26 16:22 -0800
Re: Toy code for currency handling David Brown <david.brown@hesbynett.no> - 2018-01-25 09:11 +0100
Re: Toy code for currency handling fir <profesor.fir@gmail.com> - 2018-01-25 02:27 -0800
Re: Toy code for currency handling Robert Wessel <robertwessel2@yahoo.com> - 2018-01-24 15:23 -0600
Re: Toy code for currency handling Keith Thompson <kst-u@mib.org> - 2018-01-24 14:29 -0800
Re: Toy code for currency handling supercat@casperkitty.com - 2018-01-24 14:49 -0800
csiph-web