|
Hi,
Does anyone know where the "Description" string shown in the Win2K service manager can be set using the .NET service classes? I've been unable to find this in the Service, ServiceInstaller or ProcessInstaller classes.
Thanks
Jason.
modified 10-Jul-19 21:02pm.
|
|
|
|
|
|
Wow!
Thanks Richard,
I Totally missed that one! That'll teach me to search first of all. I viewed it as such a trivial query that I never even thought to look for a specific article addressing the problem.
Regards,
Jason.
modified 10-Jul-19 21:02pm.
|
|
|
|
|
Does anyone know of a library that will enumerate the event logs on a machine? Or, does anyone know the query for ldap/adsi that can be used for this? There's gotta be something...
Tanka
|
|
|
|
|
Look at System.Diagnostics.EventLog.GetEventLogs( <span title="Optional - Defaults to local machine">[MachineName]</span> ) . Should return an array of EventLog objects for all logs defined on the machine.
|
|
|
|
|
|
I Need a macro to collapse .NET Solution Explorer Tree. Does any one know how to do that, or have code that will do that?
Thanks,
Derek
|
|
|
|
|
I am creating some web services that have several webmethods that return an integer to represent several possible return values.
My first impression was to place the return values into an enum so that I could reference the returns in the webmethod code by the enums as well.
My quandry here is this... Can I include the enum definition in the webservice itself to be available to the windows form client that will call it, or should I move the emun outside to another assembly so that it can be referenced by both the webservice and the winforms client?
|
|
|
|
|
Ray Cassick wrote:
or should I move the emun outside to another assembly so that it can be referenced by both the webservice and the winforms client?
That's what you should do IMHO. I always put my enums along with any interfaces into a DLL which is shared across servers/clients
Nish
Author of the romantic comedy
Summer Love and Some more Cricket [New Win]
Review by Shog9
Click here for review[NW]
|
|
|
|
|
If you use the enum in your WebMethod, the SOAP documenter would include that in the WSDL, or at least it always has for me in the past. This way, when your client app generates a proxy for the Web Service, the enum would be included.
"Well, I wouldn't say I've been missing it, Bob." - Peter Gibbons
|
|
|
|
|
IMHO the best design it's il rewriting . You as you said can do it by reflection , of course you must write a il parser to achieve that.
For instance you could inject code to do new things like checking the code , adding new funcionality , or you can profile it, etc, etc ...
To do this I advise you read the ECMA specs of the IL language (CIL or MSIL or ...) , and to read "Inside IL Assembler" or "Programming CIL", 2 good books about the IL Language and to read Compiling for .NET that shows some good tricks to parse and generate IL code via Reflection or component pascal .
Cheers,Joao Vaz
And if your dream is to care for your family, to put food on the table, to provide them with an education and a good home, then maybe suffering through an endless, pointless, boring job will seem to have purpose. And you will realize how even a rock can change the world, simply by remaining obstinately stationary.-Shog9
|
|
|
|
|
Thaxs for your'e suggestions - I got a book on IL (don't remember the exact name) and I really want to implement it at that level if it is possible. However, theres a difference between IL in it's text form (the OPcodes in text) and the ones that resides in the module/assembly (the "compiled" ones). As I understood it, your suggestion is that I learn the numerical form of OP-codes, parse the binary and modifies the codes with my own enhancements at that level? The problem is, I can't see the connection between the reflection of an object, and the IL code that represent it. Let's say I start using Reflection, and finds a type that qualifies for enhancment - is there a way to, for example, get a memorystream of the IL representation of that type, and the fields/properties within it? That's what I'm after.
In short, this is what I would like to do:
// Do iterate type's in assembly A1
// Found a type with a certain attribute, say [MyAttr()]
// Iterate all instance-fields that type contains
// For each field, retreive the IL code for it, and change that code with my enhancment
// Write the enhanced type back to assembly A1
/psatvz
|
|
|
|
|
psatvz wrote:
// Do iterate type's in assembly A1
// Found a type with a certain attribute, say [MyAttr()]
// Iterate all instance-fields that type contains
// For each field, retreive the IL code for it, and change that code with my enhancment
// Write the enhanced type back to assembly A1
Yes, it's full possible to do it with Reflection
Reflection permits generation of il on memory , and serialization of the results to disk.
You could check source code of Reflector for .NET on http://www.aisto.com/roeder/dotnet/[^]
or the source of Anakrino decompiler(do a search on google) to help you with retrieving your il.
Forget the parser , with reflection, you have access to function names,I think that you don't have access to local names of the variables (or at least I didn't see this anywhere on the web or on the books ...), then you can add the attribute to the piece of code that you want and rewrite the il of the original application (dangerous), or write to a new assembly.
Cheers,Joao Vaz
And if your dream is to care for your family, to put food on the table, to provide them with an education and a good home, then maybe suffering through an endless, pointless, boring job will seem to have purpose. And you will realize how even a rock can change the world, simply by remaining obstinately stationary.-Shog9
|
|
|
|
|
Man - thanx! This was a great opening, now I got enough to start working with.
Really - thanks a lot!!
/psatvz
|
|
|
|
|
Ok, no that I know how to do this (thanx to the tips I got here) I came up with a new idea, based on this, witch leads to a antoher question, namely:
Is it possible to change/enhance the once allready loaded code for a given type, during runtime?
My guess is no (since it seems like to much of a risk to allow such a thing), but I have to assure that it can't be done until I can drop it, since it would be such a great solution to what I am trying to solve. So, what I would like to do is basically this:
* A type is loaded into memory, and all metadata allong with it (methodtables etc etc).
* My enhancer code (allready in memory) is 'nofified' of this loaded type (this, I allready know how to do).
* My enhancer code detects that this type has a property/method X that qualifies for 'enhanced' logic (know how to do aswell).
* My enhancer code looks up the memory where the IL-code for the property/method X resides (I think I know how to do this, but I'm not sure).
* My enhancer makes sure that code is 'enhanced' with the right features, and when the property/method X is invoked, the 'enhanced' code is executed by the runtime instead of the original code.
The difference between this and my first approach (witch I now know how to do) is that the code-enhancing is carried out in memory, and my first approach was parsing the IL-code on disk (e.g without loading the types that where to be enhanced), enhanced it and then wrote the enhanced code back to disk.
Any help highly appreciated!
/psatvz
|
|
|
|
|
You might want to look at John Lam's work for a .NET aspect weaver[^]
Unfortunately I don't see any mention of a way of getting a hold of his weaver; but perhaps if you e-mailed him he could give you more information than I
James
"And we are all men; apart from the females." - Colin Davies
|
|
|
|
|
Thanks James, that was a good tip. Especially since I've read almost nothing on AOP, and his site (and his RAW software, the one you told me about, in particular) got me interested in that. However, just as you said, I can't either find any way to get the software, or find any more information bout it. I'll maybe send him a mail, as you suggested.
Thanks again!
/psatvz
|
|
|
|
|
Ok, now I've found out how to solve the case, and how to implement my code enhancer the absolutly best way (by, during runtime, switch the enhance-qualified IL-code before Jitted), so for the moment I'm fully satisfied.
Thanx everybody!
/psatvz
|
|
|
|
|
Im wondering if someone find any way to use an http port other than 80 to ship the library to the client side. To create Embedded Windows form.
For those that do not understand here a nice and simple tutorial on how display Windows Form inside internet explorer.
http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=388
Thanks.;)
(define Email (lambda ()
elacroix@videotron.ca))
Im not a church numeral im a free variable
|
|
|
|
|
Is it possible to enumerate through the "members" of an enum, say, to fill a combo box? I want to do something like the following (which I've verified already that it doesn't work):
Dim I As IEnumerable
For Each I In System.DayOfWeek
MsgBox(I.ToString())
Next
Thanks in advance.
Jamie Nordmeyer
Portland, Oregon, USA
|
|
|
|
|
This is how you would do it:
myComboBox.Items.AddRange(System.DayOfWeek.GetNames()); This'll get the names in a string[]. The Items property of the ComboBox is an ObjectCollection, so it has the AddRange method. Which has a signature of:
public void AddRange(object[] items);
Because string is an object, you will be able to add the items to the combobox.
The problem with what you were trying to do is that you defined I as IEnumerable. A class implements IEnumerable to let it's consumer know that it can enumerate through it's collection. You can't loop through an object's IEnumerables because that doesn't exist.
Hope I helped.
David Stone
But Clinton wasn't a predictable, boring, aging, lying, eloquent, maintainer-of-the-status-quo. He was a predictable, boring-but-trying-to-look-hip, aging-and-fat-but-seemingly-oblivious-to-it, lying-but-in-sadly-blatant-ways, not-eloquent-but-trying-to-make-up-for-it-by-talking-even-more, bringer-in-of-scary-and-potentially-dangerous-new-policies. And there was also Al Gore. It just wasn't *right*.
Shog9
|
|
|
|
|
Hey David, thanks for the reply! I know I can't use IEnumerable; I just stuck it in there to demonstrate basically what I was trying to do; I never tried to compile that. I had completely forgotten that the GetNames member was there, because my Intellisense doesn't show it unless I type System.Enum.GetNames. It also doesn't show things like Page.RegisterClientScriptBlock, despite that being a perfectly valid method. Oh well.
Again, thanks a ton.
Jamie Nordmeyer
Portland, Oregon, USA
|
|
|
|
|
Right, you should actually define I as IEnumerator, thorugh David's code is a better way to accomplish what you're wanting.
"Well, I wouldn't say I've been missing it, Bob." - Peter Gibbons
|
|
|
|
|
hi
it seems there is a new step accomplished on the road of generic implementation: it's called Gyro
see @
http://research.microsoft.com/projects/clrgen/
it looks cool
what do you thinks about it?
NB: it seems this guy deliver upgrade every 4 monthes since last year and this it beta .. perhabs a proposal at the end of the year??
|
|
|
|
|