|
I have a database with 3 tables: pc, printer, scale. All 3 tables have fileds hostname, ip_address and serial_number. I've designed a form to search any of these tables by host, ip and sn. I'm having trouble making the search go through all 3 tables and return if something is found. Like is i search for host "comp" if it's a pc it returns the values from table pc, if it's a printer returns values from table printer. The same for the other fields.
|
|
|
|
|
Where are you having problems ? It sounds to me like a poor DB design, you probably wanted one table with a column that tells you if it's a PC, a printer, etc. Either way, it sounds like you're saying you can't get the SQL right, which makes this a SQL question. Posting the SQL would sure help us to help you.
Christian Graus
Driven to the arms of OSX by Vista.
"I am new to programming world. I have been learning c# for about past four weeks. I am quite acquainted with the fundamentals of c#. Now I have to work on a project which converts given flat files to XML using the XML serialization method" - SK64 ( but the forums have stuff like this posted every day )
|
|
|
|
|
I am trying to get the text from a notepad window.
This is my declaration:
const int WM_GETTEXT = 0x000D;
DllImport("user32.dll", EntryPoint = "SendMessage")]
private static extern int SendMessage(int _WindowHandler, int _WM_USER, StringBuilder lpstring, int len);
This is what i have for my code:
Process[] p = Process.GetProcessesByName("notepad");
foreach (Process s in p)
{
StringBuilder sb = new StringBuilder(11);
SendMessage(this.Handle.ToInt32(), WM_GETTEXT, sb, 10);
code.Text += sb.ToString();
}
Please explain why my code isn't working so I can learn.
|
|
|
|
|
jdogg4232 wrote: my code isn't working
that doesn't tell us anything. Please describe what works and what doesn't, give the symptoms
(wrong result, hang, exception, ...).
Anyway, I don't understand this.Handle.ToInt32() , that would be asking for your own form's title, which you can read directly from the Form. And why do that for every process?
Probably you need Process.MainWindowHandle
|
|
|
|
|
Sorry i ment to have
Process.Handle.ToInt32()
But when i do it, i do not get anything back, no erors, just empty string.
|
|
|
|
|
jdogg4232 wrote: Process.Handle.ToInt32()
which would be wrong. I suggest you read my earlier reply again.
|
|
|
|
|
This is copy-paste from some old project of mine which uses GETTEXT and it works, I think you might find it useful
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
static extern IntPtr SendMessage(IntPtr hWnd, Int32 Msg, IntPtr wParam, StringBuilder lParam);
const Int32 WM_GETTEXT = 0xD;
StringBuilder sb = new StringBuilder(256);
SendMessage(hWnd, WM_GETTEXT, (IntPtr)256, sb);
Now as I see it, I would probably change StringBuilder to byte[256] , but StringBuilder works too. 256 is any length you might need. Another thing - if you try to get the text actually typed into notepad, you need to provide the handle of the EDIT window of Notepad, it is different from the process main window (you would get the Notepad caption that way).
Hope it helped, H.
[edit - some typos fixed]
|
|
|
|
|
Hi,
I am a beginner an I want to know how can I make a program start itself as soon as i log on into my PC .(Windows XP SP2 if it makes a difference).
Thanks in advance!
|
|
|
|
|
Daemon[^]
See the section "Windows Equivalent"
|
|
|
|
|
1- In the control panel, there is a Scheduled Tasks item. When configuring the task, there is an option where you can set it to execute at logon.
2- Please post to the right forum next time.
|
|
|
|
|
|
You have 3 options.
1. Use program as services (Must be build correctly for services)
2. Use Registery: (HKLM/HKCU)\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
3. Use shortcut inside START and Look under "ALL PROGRAMS" in Folder Startup
|
|
|
|
|
The simplest way is with a Windows Scheduled Task set to execute at start up.
|
|
|
|
|
Hi
I need to write a C# .dll library which exports functions accessible from good old win32 API applications. (not the usual other way around, calling win API functions from C#) Is this possible?
If so, how do I make them as regular (global) functions, without being nested in some namespace and class?
The win32 api application requires for example "void FunctionA()" and "void FunctionBee()" to be exported in my dll, but as far as I know, C# does not allow for functions to be on their own, without being in a namespace and class. Other than that, I do not know how to mark them as "exported", some attribute or something?
Please point me in the right direction, any help appreciated.
Thanks, H.
|
|
|
|
|
Member 1033907 wrote: If so, how do I make them as regular (global) functions, without being nested in some namespace and class?
Not possible in .NET.
You can't 'export' them, you'd need to write a COM dll and access them via COM.
Christian Graus
Driven to the arms of OSX by Vista.
"I am new to programming world. I have been learning c# for about past four weeks. I am quite acquainted with the fundamentals of c#. Now I have to work on a project which converts given flat files to XML using the XML serialization method" - SK64 ( but the forums have stuff like this posted every day )
|
|
|
|
|
That is bad news, I'll probably need to reconsider the whole approach. One last shot - if I leave out the requirement that they need to be standalone functions and write something like
namespace Space
{
public class Something
{
public static void FunctionA()
{
}
}
}
Can this FunctionA be somehow accessed from an unmanaged C++ win32 application? (no fancy com, mfc, nothing). If so, could you give me a little clue how (on the c++ side)? Or another way to make it work with just the C++ app and the C# dll? (I have access to both)
Thanks in advance, H.
|
|
|
|
|
Member 1033907 wrote: Can this FunctionA be somehow accessed from an unmanaged C++ win32 application? (no fancy com, mfc, nothing).
No.
Member 1033907 wrote: Or another way to make it work with just the C++ app and the C# dll? (I have access to both)
Using C# to generate the .DLL, we've already told you the options you have.
|
|
|
|
|
Ok, thanks, no c# then.
Out of curiosity - what project type one selects when creating COM dll in Visual Studio? Is it "ATL Project" or something else? I've never done that (and probably won't).
H.
|
|
|
|
|
Just a class library. The COM exposure is all in how you attribute your code.
|
|
|
|
|
Christian is correct. The only "easy" interface you have is to expose your classes, properties, and method is through COM.
You could try to host the .NET CLR in your Win32 app, but that's a severe pain in the ass to do. Read[^]
|
|
|
|
|
Thanks. Please read my answer above, I'll be glad if you have something to say. Otherwise I'll probably forget about C# altogether.
BTW: "through COM" means that I 1) write the C# .dll with the functions (as public static methods) 2) write another library which receives calls from the win32 application and forwards them to the C# dll?
Thanks, H.
|
|
|
|
|
i tried it again and agian but it shows only blank squares on running the project.
i also have these fonts installed.
|
|
|
|
|
On your Form, try Changing property "Language" from "(Default)" to "Hindi"
|
|
|
|
|
sorry sir i dont see any property name language in my textbox property window my ide is vs2008
|
|
|
|
|
Form it self, not Textbox
|
|
|
|