|
here some code i used for the winamp api
<br />
[DllImport("user32.dll")]<br />
public static extern int FindWindow(string c,int d);<br />
[DllImport("user32.dll")]<br />
public static extern int SendMessage(int hWnd,int msg, int wparam, int lparam);<br />
Now just call though functions normal.
hope it helps
|
|
|
|
|
Thank u very much now i will try it for my Dll.
Thanx again.
Tushar
|
|
|
|
|
I want to do the opposite. Maybe you know the way. I want to use a dll created in c#, in vb6.
Thnx
NSi
|
|
|
|
|
tell me when u figure that one out
|
|
|
|
|
You need to use the regasm tool to register the C# objects as COM objects; then you should be able to use it from VB6 as you would any other COM object.
HTH,
James
"Java is free - and worth every penny." - Christian Graus
|
|
|
|
|
I can find "System.Management" in msdn, but my VS.net reports error:
D:\Data\Source\C#\CodeProject\Project1\App.cs(2): The type or namespace name 'Management' does not exist in the class or namespace 'System' (are you missing an assembly reference?)
Thanks for your help
///////////////////////////////////////////////////////////////////////////////////
// Platform: IBM thinkpad x21
// OS:Microsoft Windows 2000 5.00.2195 SP2
// Mircosoft Development Environment 2002 version 7.0.9466
// Mircosoft .Net Framework 1.0 version 1.0.3705
///////////////////////////////////////////////////////////////////////////////////
I'm amumu, and you?
|
|
|
|
|
Hi
You need to reference the System.Management.dll either in VS.Net by adding it to references in your project or at comman line when compiling.
|
|
|
|
|
Thankyou
I got it
I'm amumu, and you?
|
|
|
|
|
How in the F*** do you get the hInstance property of your dll? I need it to use the Bitmap class' FromResource method.
Thanks in advance.
Jamie Nordmeyer
Portland, Oregon, USA
|
|
|
|
|
|
Look at the Marshal class, IIRC there is a property/method to get the HINSTANCE.
James
|
|
|
|
|
Take a look here.
Hope it helps.
John
|
|
|
|
|
I'm working with the March version of Visual Studio .NET, with the service pack 1, and on a windows NT 4 PC.
I used the udpclient.receive method in order to get some udp data transmitted by an Ethernet bus.
I managed to correctly acquire the data, but the problem is that the resulting file also contains a great amount of null bytes which hasn't been sent by the sender.
It seems to be a known bug of the udpclient method, and I wondered if a solution was known to fix it.
Thanks,
|
|
|
|
|
Why do language designers tout how you don't have to think about passing by value vs. reference anymore in languages like C# and Java, when in reality, you reall DO have to think about it all the time!!! In fact, I find it more confusing, because these languages hide the issue of value/reference, and I find myself constantly worrying about references going out of scope. Is this just me, being a die hard C++ programmer, or what?
Especially confusing is that native types (even though they say they're objects!) are passed by value, whereas objects are passed by reference.
So:
int i=5;
foobar(i);
string s="abc";
fizbin(s);
foobar passes by value and fizbin passes by reference. I have to explicitly say:
foobar(ref i) !!!
What is with this? This seems ridiculously confusing. On one hand they say both things are objects, then they treat them differently.
Enlighten the grouch. Am I missing something really spectacular about these languages?
Marc
|
|
|
|
|
I don't really see where the confusion comes from considering all the "intrinsic" types derive from System.ValueType .
Its also much easier and safer to mark a paramater as ref than passing pointers.
|
|
|
|
|
i never understood these either and probably don't, but i have made myself a nice rule of thumb for when to use the ref parameter.
When you need more than 1 returned type, return one object and ref the others.
I know this is a very limited scope, but if you are learning like me it cuts down on extra confusion.
|
|
|
|
|
With Managed C++, we have it easy. All reference types are accessed via pointers and all value types are accessed as direct variables.
Thus I can only have a String* and never a String which won't compile.
But I can have an int or a char
Nish
Author of the romantic comedy
Summer Love and Some more Cricket [New Win]
|
|
|
|
|
now that has just totally confused me again.
COMMAND: erase Nish's previous reply from Brain.
COMMAND OK: Brain deleted. Oops
|
|
|
|
|
The way I look at it, an "object" variable is a pointer to the object, and that pointer gets passed by value (unless you specify otherwise).
You can access the methods and properties of the original object, but you can't return changes to the pointer - if you set the parameter to a different object, the original variable will still point to the original object.
Nothing confusing about that!
|
|
|
|
|
That is a good way to think about it. Thanks!
(But, in C#, all those intrinsic types are actually aliases to objects, so in theory, a pointer would be passed, which would mean they're being passed by reference!!!)
But I still like your way of thinking about it. Most of my brain can handle it.
Marc
|
|
|
|
|
Marc Clifton wrote:
But, in C#, all those intrinsic types are actually aliases to objects
Actually, anything that inherits from System.ValueType is treated as a value type - it gets allocated and passed around on the stack, not the heap. If everything really was an object, the performance would be appalling!
You can treat a value type as an object, but that involves boxing/unboxing the value to the heap.
|
|
|
|
|
Ah! I didn't realize that. Thank you for the enlightenment!
Marc
|
|
|
|
|
OK, I've got a bool data type, and I want to convert this to a 0 or 1 so I can create an SQL statement, having defined a field in Access as Yes/No.
How do I do that? Do I really have to code:
bool b;
int i=b==false ? 0 : 1;
I can't believe there isn't a conversion to a 0/1!!!
Or even worse, do I subclass the System.Boolean and create my conversion in a class? Argh. Does anyone else share my frustration?
Thanks in advance!
Marc
|
|
|
|
|
You have a couple of options without having to go that far. First you can use the System.Convert class to Convert a bool to any number type like:
bool b = true;
Convert.ToByte(b); //Returns 1
Also if you are using ADO.NET you can use paramaters instead of String building your SQL statement. It will handle the boolean to SQL bit field for you.
|
|
|
|
|
Ah. I had tried that with ToInt32 and it didn't work, so I went on this bizarre quest. However, trying your example, using ToInt32, now it does work. I must have done something wrong originally!
Thank you for your response, and I'll look at parameters too!
Marc
|
|
|
|