|
JohnBond311 wrote: Seriously, was all the sarcasm necessary? I don't feel it's appropriate to belittle someone when they have a valid question.
I don't really think that someone tried to belittle you, you only got replies to the question that you asked. Perhaps the replies were way below your knowledge level, but not below the level that you showed in the question. Judging only from your original question, you seemed rather clueless about components and how applications work.
Also the comment about not recieving a good answer to your previous post did make you look like someone who asks things that is impossible, but not being content with the answer that it's impossible asks the same question over and over.
---
b { font-weight: normal; }
|
|
|
|
|
Guffa wrote: Perhaps the replies were way below your knowledge level, but not below the level that you showed in the question. Judging only from your original question, you seemed rather clueless about components and how applications work.
Agreed. In the future I will try to explain myself further in detail. I posted in haste earlier, hoping for a quick answer. I was offended by the Grand Canyon remark, and I still fail to see the benefit one would receive from such a statement. But as I said, next time I'll be more thorough.
Guffa wrote: Also the comment about not recieving a good answer to your previous post did make you look like someone who asks things that is impossible, but not being content with the answer that it's impossible asks the same question over and over.
Again, haste is to blame. I shouldn't have used "good" and I meant to thank the persons who initially responded. I started this new thread because my old one had been buried under all the new posts. I did not intend to give the impression of asking over and over. I am happy with the responses from this post, aside from the Grand Canyon remark.
Although, I'll admit it is a rather funny analogy.
John
|
|
|
|
|
JohnBond311 wrote:
Agreed. In the future I will try to explain myself further in detail. I posted in haste earlier, hoping for a quick answer. I was offended by the Grand Canyon remark, and I still fail to see the benefit one would receive from such a statement. But as I said, next time I'll be more thorough.
As Dave's said the large majority of new posters are relatively clueless, and that fair or not anyone new to the board tends to be percieved that way until they demonstrate otherwise. I'd no idea Dave's solution existed, and your pdf example using a technology that wasn't generalizable made you appear less skilled.
|
|
|
|
|
I need find out how to create a virtual partition in C# (or if it's impossible, in C++). So WinXP should think there is one more partition on my hard disk, or that there is another hdd connected or smth. I need to be able to load the actual partition the same way daemon tools load the iso images, from a file...
How do i do that? Any clues?
Thank you.
bunny EATING rabbit
|
|
|
|
|
I think you have to create a device driver for that. The .NET Framework cannot be used to create device drivers.
|
|
|
|
|
Then how do you create a device driver? For instance in C++ or C?
bunny EATING rabbit
|
|
|
|
|
First you'll have to download the DDK from Microsoft.
Included are samples (in C++) on how to create drivers.
Regards,
mav
--
Black holes are the places where God divided by 0...
|
|
|
|
|
I don't know this, you should try searching Google for a device driver tutorial.
The C# forum isn't a place where you can get answers for this.
|
|
|
|
|
I need to interact with another application on my desktop .I'll have it running and if possible I want to force its menu to popup , then click one of its menuItems (like open , or save) ...after I do this the other application should bring up a child window that I need to copy its content ...
I don't want you to give me code rather just pointers on how to deal with this ...I know it's a lot of work but for me it's worth it .
Thanks guys.
|
|
|
|
|
Well, you *could* send Win32 messages to the application (like WM_MOUSEDOWN at the location of the menu, etc). You could also send keys to the other application via SendKeys or via Win32 SendMessage that corresponded to a shortcut key for the application, perhaps CTRL+S for save, etc. But all these things are hacks and rely on the current functionality of the application to work. The next version of the application could easily break your hack.
|
|
|
|
|
Thanks guys...I'll try these ideas..
|
|
|
|
|
you can also try macros
It is Good to be Important but!
it is more Important to be Good
|
|
|
|
|
Creating tcp/ip application. I want network path from client pc to server pc. Like what we are getting with trasert command.
The purpose of this is I could not able to connect the server coz of which not getting any request to server. Now I want to know where exactly it it is getting fall at client network place.
|
|
|
|
|
There are lots of articles on this site and around the web that demonstrate how to use sockets or .NET remoting to communicate across process and across machine boundaries. Have you tried searching?
|
|
|
|
|
It will be very greatful if u suggest me one for my query. As of now I have got for connection sending and receiving data. but now I want the path of network while sending data.
|
|
|
|
|
Hi,
I have on vb application
where i could not able to connect at one client place
With wintrapper
.RemoteHost = Split(strIpaddress, "|")(0)
.RemotePort = Split(strIpaddress, "|")(1)
.Connect
and on wintrapper.SendData i am getting error
Wrong protocol or connection state for the requested transaction or request
What should i do to connect to server?
|
|
|
|
|
Have you read this article[^]? It talks about how to make a client and server communicate via sockets.
If you need help with a specific problem, be more specific.
|
|
|
|
|
Hi All,
I have been making a user control. (VS 2003)
I wish to handle its mouse events.. something like, the control background should turn red on MouseDown, and become white again on MouseUp.
I added the MouseDown and MouseUp event handlers and tried changing its BackColor on MouseDown and MouseUp events. After building and adding this control to another application, i found that the color does not change.
Do i have to create my own events for this. I am not able to understand why this is not working.
Can anyone help me out with this. I am new to C#.
Thanks in advance.
*** Who said nothing is impossible? I have been doing it for a long time ***
|
|
|
|
|
Did you call this.Invalidate(); after you changed the BackColor of your control?
Dave Kreskowiak
Microsoft MVP - Visual Basic
|
|
|
|
|
Hello
1- Make a break point in your code to see if the events are really excuted or not. You could also do something else like showing a MessageBox, or sending a trace, or anything as an evidence of the excution of the handlers.
2- Please post the code that you change the background with. This also might help.
Regards
|
|
|
|
|
I am trying to use a C++ dll designed in VS 6.0 with C# .net. The problem is with passing a pointer into the dll that expects a char* (not unicode). I have tried passing a IntPtr, a StringBuilder, and a Byte[], but I get the same results "AccessViolationException was unhandled" "Atempted to read or write protected memory. Any help would be appreciated.
Heres the C++ dll code:
extern "C" __declspec(dllexport) BOOL ExGetDeviceSerialNumber(DWORD nDevice, char *pSerialNum)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
TRACE(_T("Entering LogiComm2GD ExGetDeviceSerialNumber\n"));
return DllGetApp()->GetDeviceSerialNumber(nDevice, pSerialNum);
}
BOOL CLogiComm2GDApp::GetDeviceSerialNumber(DWORD nDevice, char *pSerialNum)
{
if(nDevice >= m_NumL2GDDevices)
return FALSE;
strcpy(pSerialNum, &m_USBSerialNumbers[nDevice][0]); // exception here
return TRUE;
}
and here's the C# code:
// dllImport declaration
// get the device serial numbers
[DllImport(@"C:\Documents and Settings\jbroderick\My Documents\Visual Studio 2005\Projects\\USB_D2XX_App\LogiComm2GD.dll",
EntryPoint = "ExGetDeviceSerialNumber",
ExactSpelling = false,
CharSet = CharSet.Ansi,
CallingConvention = CallingConvention.Cdecl)]
public static extern unsafe bool ExGetDeviceSerialNumber(long nDevice, IntPtr ptr);
// access the dll
IntPtr ptrSN = IntPtr.Zero;
ExGetDeviceSerialNumber(Device, ptrSN); // exception here
|
|
|
|
|
JohnnyB717 wrote: strcpy(pSerialNum, &m_USBSerialNumbers[nDevice][0]); // exception here
I would think so since pSerialNum has never been allocated.
"strcpy" is deprecated... see the safe string function reference[^]
Also the design seems flawed. Basically the whole thing is a mess, whoever wrote that C++ should not be writing production code.
led mike
|
|
|
|
|
Thanks Led mike for your reply.
I have also tried using a byte[] with the same result as below. Any suggestions would be appreciated.
// get the device serial numbers
[DllImport(@"C:\Documents and Settings\jbroderick\My Documents\Visual Studio 2005\Projects\\USB_D2XX_App\LogiComm2GD.dll",
EntryPoint = "ExGetDeviceSerialNumber",
ExactSpelling = false,
CharSet = CharSet.Ansi,
CallingConvention = CallingConvention.Cdecl)]
public static extern bool ExGetDeviceSerialNumber(long nDevice,
[MarshalAs(UnmanagedType.LPArray)] ref byte[] SerialNumber);
byte[] serByte = new byte[500];
ExGetDeviceSerialNumber(Device, ref serByte);
|
|
|
|
|
Hello
I'm not sure if this is the problem, but if I were you I'd give these points attention in this particular order:
1- Your nDevice parameter is a DWORD which is 32bits long, while in your C# code you pass a long which is 64bits long. You should try passing an int32 instead.
2- The second parameter is char* while you pass it IntPtr .. I suggest you pass a StringBuilder class instead. If you do you'd have to remove the unsafe keyword.
3- You are making your C# declaration a bit complex. Why?? Try this P/Invoke:
[DllImport(@"C:\Documents and Settings\jbroderick\My Documents\Visual Studio 2005\Projects\\USB_D2XX_App\LogiComm2GD.dll",
ExactSpelling = true,
CharSet = CharSet.Auto,
CallingConvention = CallingConvention.Cdecl)]
public static extern bool ExGetDeviceSerialNumber(long nDevice, IntPtr ptr);
Notice that IMO the unsafe keyword is not necessary.
4- Calling another function from the exported function? I have doubts about this part.Try copy/paste the code in the second function into the first.
5- Comment these line for the sake of debugging, if they are not necessary:
AFX_MANAGE_STATE(AfxGetStaticModuleState());
TRACE(_T("Entering LogiComm2GD ExGetDeviceSerialNumber\n"));
Also elaborate what does this macro do.
I hope this helps.
Regards
|
|
|
|
|
Thanks Nader,
I changed the declaration to:
// get the device serial numbers
[DllImport(@"C:\Documents and Settings\jbroderick\My Documents\Visual Studio 2005\Projects\USB_D2XX_App\LogiComm2GD.dll",
EntryPoint = "ExGetDeviceSerialNumber",
ExactSpelling = false,
CharSet = CharSet.Ansi,
CallingConvention = CallingConvention.Cdecl)]
public static extern bool ExGetDeviceSerialNumber(Int32 nDevice, StringBuilder sn);
Apparently passing in the Int32 instead of long fixed the problem. I was so focused on the char* conversion that I didn't pay attention to the long. Also, I was able to pass in the long as a ref and get back the number of devices without issue. So, I thought that was OK.
Thanks again!
|
|
|
|