|
Sorry, but I am not a C programmer. I'm not that old! I do know Java, C++/MFC, C#/.NET, say OOP in general. And I was definitely not thinking of callbacks, that is not even possible in this case. My problem is that, until now, I have only written (non-extensible) standalone programs and am not familiar with any kind of plugin/addin/othernameforextension architecture programming, neither C-style nor C#-/Java-style.
I have an *object model* (object-oriented) with what I would see as "predefined events". And I didn't intend to call plugin functions *from* that OM in any callback style, I did want the *plugin* to register for the events it needs. The question is: How?
I do not feel bound to any specific programming paradigm, I was just asking for *any* way to have an extensibility mechanism ... I am open for any OOP approach to this problem!
Regards,
Andreas
P.S. I do "need" the .NET Framework for this programming task, regardless of its download size.
|
|
|
|
|
Anonymous wrote:
The question is: How?
Short answers :
- declared events are made public in the assembly, so that the plugin assembly can register one or more of these events by adding a reference to the main assembly, and creating new event instances.
- assemblies can be dynamically emitted or loaded with a .config file, a separate file from the main assembly.
- that said, assemblies may communicate explicitely, not explicitely, synchronously, asynchrounously, use a message queue, etc. that's up to you and your requirements. In fact, that's your specific use of the .Net framework.
Long answer : answering the question is as broad as answering the question : "I want two programs to communicate, how ?"
Now good luck! I am not an interested party here, but from what I see on the MSDN samples for instance, you have plenty of code to begin with.
And I swallow a small raisin.
|
|
|
|
|
Thank you very much for that hint! Such an easy solution using the appSettings...
I know how to register for events, but that did require access to an *instance* of my class first, not just setting a reference.
I have now managed to get a simple sample running, merci beaucoup.
Andreas
|
|
|
|
|
Hi,
I am a Brazilian developer and I need to create a brazilian
keyboard.
I know that I need to change the VKCHAR table and sckxtmsengus1.cpp,
what methods needs to be change?
Could anybody give me more information?
Thank you in advance.
Katiúcia Freitas da Silva
Phone: + 55 35 3471 9300
e-mail: katy_freitas@hotmail.com
ICQ#: 127458845
|
|
|
|
|
Is there any way to load the we breference "on the run" ?
BAD
|
|
|
|
|
Sure there is, for someone from the MS tech surport center told me. But I can do it by myself, and I have not found a single sample in C++ ATL. Pity.
Any one knows?
|
|
|
|
|
Genius indeed. I even read an article on Code Project about this.
Now, here's a problem. Suppose I have a few web sites on the same IIS server. Here goes the question: how do I do, so that the kit created as a web deployment project to install the application on another web site but the "default web site" ?
I tryed stopping all the other web sites but the one I want to install onto, but it doesn't always work.
Does anybody have a better idea ?
BAD
|
|
|
|
|
As a beginer of ATL Based Web Service programmer, I have some some questions about it:
1)Whether a Web Sevice can hold its state during its serving many clients, for I want keep some data structs among clients because these clients are collorating doing a certain work. If Web Service can has this virtue, how can I do, are there some documents about it?
2) can a web service client dynamicly locate the server without recompiling its source files When a Web Service provider changes its location on the internet? If it can, how can I do and are there some documents about it?
Please help me, thank you!
oyyx@sina.com
|
|
|
|
|
Hi,
I have two Queries...
First:
Is there any way by which I can Specify (In my Assembly itself) that
the CopyLocal Property of a Reference to my Assembly should be False?
ie: Whenever my assembly is added into any Project (References), the
CopyLocal property for that Reference should be False by default.
Note: It should be possible without making the Assembly Strong Named.
And,
Does the Framework/VisualStudio IDE raise any Event or send any kind of
Notification to the Assembly when a Reference to it is Added or Removed
from a Project.
ie: I want to execute some code from within my assembly when that Assembly is
Added or Removed from the References collection of any Project.
Thanks,
Firoz
|
|
|
|
|
Hi,
I want to have tool windows in my application but I don't know how can I create window, that is above application main window
When TopMost==true this window is above ALL windows and
when TopMost==false this window can be under main application window
Thank you (And I'm sorry about my english)
Tomas Petricek
|
|
|
|
|
Use the AddOwnedForm method on the main window; passing in the instance of the tool window.
James
"And we are all men; apart from the females." - Colin Davies
|
|
|
|
|
Thank you
|
|
|
|
|
Hi
This is my first post to CodeProject .
I have tried to insert an image into a RichTextBox component but with no result. I have tried with CreateGraphics and drawn an image into it but when I type over the image, it dissapears.
If I load a rtf file containing an image it works just fine but how can I include an image programmaticaly?
I included a Com object RichTextBox6.0 and it has an array of ole objects with the add method but I don`t know what to give it as parameters.
Can anyone help me?
|
|
|
|
|
I'm trying to access XML Web Service using C++ and I've got two
problems.
First, when I try to invoke web service's method from another thread
(not UI thread) I get SOAPCLIENT_INITIALIZE_ERROR error.
Second, when I pass to web service BLOB data which length is greater
than approximately 800KB I get
ERROR_IO_PENDING error (returned by GetLastError).
Is there any way to invoke web service's methods in worker threads and
to pass in BLOBs that are larger
than 800KB (C# client can send about 3MB)?
|
|
|
|
|
I want to hide my main form when it is shown so it remain only in the tray.
If I try to hide it in the OnLoad event it is reshown. The same with Visible = false;
How can I do that?
|
|
|
|
|
This article should help you,
And I swallow a small raisin.
|
|
|
|
|
Hi everybody.. I'm thinking to buy Visual C.Net, but it seems to me (I'm quite new to Codeproject ) that it has some serious problem, especially in its IDE; now I'm interested in learning "standard" C++, so I'm wondering: better stay with "old" Visual (6.0, I think?) (some shops still have it, same price) or it is too old?
Thanks
Erminio
____________________________________________________
It's what you do right now that makes the difference
|
|
|
|
|
Right tools for the right job, Erminio. Depends what you want to do.
If you're tlaking generally though, I think on one hand the complaints about VS.NET are greatly exaggerated. For something so new, it really is impressive... hell, even if it wasn't new, it has only as many problems as other IDEs.
However, the higher level the language, the less power you have (as a trade-off for ease of use). Having worked at a low level as you seem to have done, you might find VC++ an easier transition.
Tough call... wha'dya wanna do with it?
Paul
|
|
|
|
|
Hello!
I have VS .NET and VC++ 6.0 and I like the new IDE - apart from some obvious problems. And if you buy VC .NET you can do the unmanaged and the managed stuff and the new compiler is more standard compliant and there are some additions to MFC and ATL, too. So I would go with VC .NET, but I'm only a spare time programmer so I don't know if you can be more productive with the old IDE as some people complain...
Cheers
Martin
"Situation normal - all fu***d up"
Illuminatus!
|
|
|
|
|
Erminio,
I have both (just recently got VS.NET) The .net IDE is okay if just a bit fiddly. I am sure I will get used to it.
It's also seems to be slower and takes up much (3.5 GB) more space on your hard drive. If you have got anything less than a 1 gig PC with 512 MB of ram then you might get frustrated. I have vis studio v6 on a 366 Mhz laptop with 64 meg and its okay.
If you are new to it the .NET might be better if you are starting from scratch. I am sure everyone else will be migrating over at some point.
If you are buying it yourself though.... you can get hold of copies of VS6 for a lot less money than VS.NET.
cheers
Adam.
"I spent a lot of my money on booze, birds and fast cars. The rest I just squandered"
George Best.
|
|
|
|
|
adamUK wrote:
If you have got anything less than a 1 gig PC with 512 MB of ram then you might get frustrated.
Don't believe him! I've got PIII 550 Mhz and 128 MB of RAM! VS.NET works on my PC really OK!
Or maybe I got frustrated and didn't notice that?
Ñ There is only one MP Ð
|
|
|
|
|
adamUK wrote:
and takes up much (3.5 GB) more space on your hard drive.
Most of that space is used up by MSDN which, unlike VS6, is installed at the same time as the rest of the VS.
Looking at my full install, without the MSDN directory, it takes up 678MB.
James
"And we are all men; apart from the females." - Colin Davies
|
|
|
|
|
You simply forgot to mention all the "affiliate" folders such like :
- c:\program files\MS .Net
- c:\winnt\.Net
- c:\MSDE
- IIS (just to be able to run the quickstart tutorial)
- c:\winnt\system32\ all run-times
- + samples directory if you intend to learn something!
And I swallow a small raisin.
|
|
|
|
|
EBonizzoni wrote:
I'm interested in learning "standard" C++
Buy Visual C++ 6.0. I think it's really easy for beginners! I was learning C++ on Visual C++ 6.0.
Ñ There is only one MP Ð
|
|
|
|
|
If you are interested in "standard" C++ as you just said, then stay away from .Net : it is of full of proprietary attributes that turn programming into a knightmare. Many times you just lose the knowledge of what you are talking about. I have already been caught about 10 times with attributes that bind behaviors without being seen, and have seen myself as if I was a lousy VB programmer who doesn't know a sh*t about programming.
Since the MSDN doc is a reference, with no real tutorials about attributes and stuff like that, you'll end up being forced to buy a dozen books before you do anything reliable.
In some way, that's the next level after ATL, these f***ing undebuggable macros.
PS : on a 128MB RAM system, you'll be swapping all the time.
And I swallow a small raisin.
|
|
|
|