|
I need to find all the visible windows of an other application or childs windows of a window extern to my application.
I'm not a native api expert , i searched a few but it's not an easy task because the 'window' keyword is too generic and procuces a lot of results.
Can someone put me on the right way please?
|
|
|
|
|
|
I read articles on Reflection still can't figure out a practical use for it?
Why dynamical invocation? I can see many practical application for "late-binding"/polymorphism but reflection ...
Perhaps NUnit? Test fixtures are not know until at runtime user specify dll to test... is NUnit built using reflection? Can somebody gives more practical application of reflection?
Thanks
dev
|
|
|
|
|
Plugins. Scripting. Dynamically binding to different versions of libraries.
I recently wrote a bunch of wrapper classes that used reflection to load a library assembly and call methods. It would try to load several different versions of the assembly in preference order.
Simon
|
|
|
|
|
most apps I seen before dont need to load dll dynamically... so I can't really quote another example of practical use except NUnit
that said, attributed programming (declare webmethod for instance) relies on reflection - but could that not be done with inheritance? (but say C# only allows single inheritance)
dev
|
|
|
|
|
Just because most apps don't use it doesn't mean that it's not useful.
Yes, I'd agree about 90% of the stuff I write doesn't use reflection at all. There are some things however that reflection is useful for. Plugins is a common example where dynamically loading assemblies is often used.
Simon
|
|
|
|
|
Many a DAL is built with reflection
|
|
|
|
|
DAL - data abstraction layer? ... dont think Hibernate relies on that...
dev
|
|
|
|
|
I don't know about Hibernate (the Java version), but NHibernate (its .NET clone) does heavily rely on reflection.
So do many other advanced tools like as for example Reflector, NCover or NDepend. Addmittedly, the mentioned are used for code analysis rather than programming itself.
Regards
Thomas
www.thomas-weller.de
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. Programmer - an organism that turns coffee into software.
|
|
|
|
|
devvvy wrote: DAL - data abstraction layer?
Yup
devvvy wrote: dont think Hibernate relies on that...
I dunno about NHibernate, but there are more custom layers out there.
With reflection you can 'ask' a class whether it contains a specific property or method. Combine this with the dynamic loading of an assembly, and querying what classes the assembly got - you could load your RichEdit (or any other control) dynamic from an assembly that the user selects (during runtime) and manipulate it using reflection.
Hope this helps,
|
|
|
|
|
thanks guys, just trying to stretch my mind so I learn reflection beyond theories
I read about nhibernate seems like it does use reflection to determine properties type at runtime - this seems to be a pattern that's opposite to that implemented by NUnit.
In NUnit - framework relies on reflection to trigger methods/test cases from dynamically looaded DLL.
In NHibernate - seems like while application and nhibernate dll are linked compile time - but NHibernate dll still need to find out object/field types in runtime because the information is not know apriori..
don't know reflection well enuf to see what other application there is (dynamic load Rich Edit ... hum... why'd you want to let user to dynamically load a RichEdit control?)
dev
|
|
|
|
|
Both Entanglar and Diamond Binding use reflection pretty extensively.
For Diamond Binding a class is decorated with attributes that describe what fields in a database map to what properties, so the runtime can automagically query and populate instances of the class. This avoids reams of maintainable code-gen (and allows much more flexible query strategies). Reflection is also used to "stuff" values from the database back into the class.
Entanglar uses attributes to describe which properties and methods on a game object should be "network aware", and how much inertial error is introduced when they change. The core uses this to hook up interception to notify the network subsystem about changing properties and method calls that need to replicated to remote simulations. The remote simulation uses reflection to invoke these methods/properties when the message arrives, and to create simulated entities when they are created on another peer.
The renderer I'm working on for Entanglar uses attributes to describe what type is responsible for providing the "view", and for a simple renderer, descriptions of what parts make up the visual appearance of the entity (mesh/texture/hlsl effect, etc). Also attributes can be put on game entity properties to bind these to effect file parameters (so if you have a shield effect, you could bind the intensity back to the game entity).
So loads of usages in "framework" style scenarios.
|
|
|
|
|
Thanks
Seems like reflection comes in as handy mechanism when you're building some sort of utility library (NHibernate, NUnit... etc, WebService's [WebMethod] attribute) and from utility library you need to invoke methods in consumer/client's code. We can rely on attribute programming/reflection instead of, otherwise, say delegate/events/inheritance. Cleaner code indeed.
Useful lesson indeed many thanks.
dev
|
|
|
|
|
Hello I need the project " post script Editor" which include only Find and Replace of contents
Regards
Ali
|
|
|
|
|
Good. I hope you find one, if not try here [^]
Bob
Ashfield Consultants Ltd
|
|
|
|
|
Last time I looked PS was a text format. Do you have specific problem?
xacc.ide - now with TabsToSpaces support IronScheme - 1.0 beta 1 - out now! ((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x))
|
|
|
|
|
what's the meaning of it? Can show me any article about it?
thanks
|
|
|
|
|
|
Hi all...
I'll try my best to keep this query as compact as possible...
I'm currently working on a project that involves generating alarms/notifications for the Automated Distributed Control System at the company. Well, for this, the team has created Notification Client and Notification Server Applications.
There is also another .exe created that dumps a message (the message is taken from a database, by means of a function) into a Private queue (which can be viewed in the Computer Management tool). This .exe is intended to run alongside the Notification Server Application, which accesses the queue to obtain the messages, which are then displayed at the User Station by means of a method created (called rhsc_notifications; I'll detail that later).
The problem we are facing is that the display at the User station is truncated, i.e. in all fields, only the first character is displayed, and remaining data is missing. (The alarm/notification is displayed as multiple fields like Alarm generation location, priority, description, time, etc.).
This problem is faced when the Notification Server uses a method called rhsc_notifications directly. However, one of the team members created an interface in Visual Basic. This interface is called by the Notification Server, and the interface processes the message, and calls the rhsc_notifications method to display the message at the User Station. When this interface is used, the display turns out fine, no truncation. However, when the rhsc_notifications method is called directly from the Notification Server Application, there is truncation.
We are required to eliminate this interface, and call rhsc_notifications method directly. The thing is that this method uses a library that has NOT been developed in a .Net environment. Hence, there is the need to marshal the data.
We've tried a few things with marshaling, but the problem hasn't been resolved. So I'm hoping you guys will be able to help me out with this...
So, can I go ahead and post the code?
Thanks in advance...
Tunçay
|
|
|
|
|
Sounds like the type of thing that happens when you forget to specify the size of a varchar/nvarchar field in a DB.
This can likely happen in native languages too.
Normally when you bark up the wrong tree, things normally goes worse. I dont think marshalling is the issue here (but that's just my guess).
xacc.ide - now with TabsToSpaces support IronScheme - 1.0 beta 1 - out now! ((lambda (x) `((lambda (x) ,x) ',x)) '`((lambda (x) ,x) ',x))
|
|
|
|
|
Hi, thanks for your reply .
Well, my gut feeling was that it'd be something to do with wrongly specified data types too... But the team has decided that it's marshaling that's gonna get us the solution here (thing is, I joined in between, when the project was already underway)...
Hmmm... I'll check on that, and get back to this thread (hopefully to say "Problem solved, thanks!!! " )...
Anyway, thanks for your response...
Tunçay Şanlı
|
|
|
|
|
And hey, how (and where) do I check if the size of the varchar/nvarchar fields of the DB have been specified, and if they've been specified correctly?
Thanks again,
Tunçay Şanlı
|
|
|
|
|
Hello to everybody,
I have an application which includes to access remote computer on web from the another one and access that pc remotely.
In lan, the connection is done through ip addresses of same network, but on web the network may be differ, and i dont know how to make the connection.
Will you please help me out if anybody knows it will be better.
Thank you.
|
|
|
|
|
Hi,
LAN connections and WAN connections are the same but with different IPs. Your LAN IP can be found from your local area connection's properties (if you have a PC) it's usually starts with 192.168 ,you know.
You can find your WAN IP from here[^].
Of course if you have a router or a firewall, you have to configure some settings called PortForwarding. It depends on your router model... PortForward.com[^] can help you in this issue.
Hope can helps
I died as a mineral and became a plant,
I died as plant and rose to animal,
I died as animal and I was Man.
Why should I fear? When was I less by dying?
-- Rumi[^]
My blog
|
|
|
|
|
Thnks,
Ok now i am sure about address, but still have confusion about the connetion.
I dont know how to connect to the another pc. Any server like ftp is needed as middle ware?
|
|
|
|