|
Thank you so much, Health. Your tip is very helpful!
|
|
|
|
|
I have an Extension DLL create from MFC which consists of so many exported classes and would like to be able to use them on my c# project. I know since this is not a pure COM Object and therefore i can't use tlbimp.exe to create Runtime callable Wrapper class for it. As I was reading about Platform Invocation Service (PInvoke) and my question is,
can i export classes from my dll through PInvoke? Or just functions that can be imported from PInvoke? Any Suggestions will be much appreciated.
|
|
|
|
|
|
Leppie,
Can you explain to me a bit about MC++ Mixed mode?
thanks
|
|
|
|
|
|
I have problem. When I try to read the records of the 'MSysObjects' table in my access db, I receive this error message:
Run-time error '3112':
Record(s) can't be read; no read permission on 'MSysObjects'
I know that MSysObjects is a system table, but I don't know why I can't read its records.
I write this code:
/**************************************************************************/
m_oleDBConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+szMDBFileName+";";
m_oleDBConnection.Open();
string t_Clause = "SELECT * FROM MSysObjects WHERE Flags = 0 AND Type = 1";
System.Data.OleDb.OleDbCommand t_Select = new System.Data.OleDb.OleDbCommand(t_Clause, m_oleDBConnection);
try
{
System.Data.OleDb.OleDbDataReader t_Reader = t_Select.ExecuteReader();
}
catch (OleDbException e)
{
string errorMessages = "";
for (int i=0; i < e.Errors.Count; i++)
{
errorMessages += "Index #" + i + "\n" +
"Message: " + e.Errors[i].Message + "\n" +
"NativeError: " + e.Errors[i].NativeError + "\n" +
"Source: " + e.Errors[i].Source + "\n" +
"SQLState: " + e.Errors[i].SQLState + "\n";
}
/**************************************************************************/
Can you tell me please what's the problem ?
Thank you very much for all answer.
|
|
|
|
|
Hello my Gurus,
I could not figure out why my DataSet, more specificly my [M-T] table is not updated at all and no exceptions generated.
iNumOfAffectedRecs is always = 0;
Did I miss something?
Thanks in advance
Khang Nguyen
=================================================================================
private void btnTestUpdate_Click(object sender, System.EventArgs e)
{
MDSConnection MDSConn = new MDSConnection();
OleDbConnection conn = MDSConn.GetCon(); // conn is already open!
string sQuery = "SELECT * FROM [M-T]";
OleDbDataAdapter adapter = new OleDbDataAdapter(sQuery, conn);
DataSet dataSet = new DataSet("Update_DataSet");
adapter.Fill(dataSet);
Console.WriteLine("[M-T] rows = " + dataSet.Tables[0].Rows.Count);
DataRow row = dataSet.Tables[0].NewRow();
row["ModuleID"] = "LK-STT1"; // text
row["TaskID"] = 791; // number
dataSet.Tables[0].Rows.Add(row);
dataSet.Tables[0].AcceptChanges();
Console.WriteLine("[M-T] rows = " + dataSet.Tables[0].Rows.Count);
OleDbCommandBuilder commandBuilder = new OleDbCommandBuilder(adapter);
// adapter.Update(dataSet, dataSet.Tables[0].ToString());
int iNumOfAffectedRecs = adapter.Update(dataSet);
MDSConn.Cleanup(); // con is closed
}
|
|
|
|
|
Yes, this line shouldn't be there:
dataSet.Tables[0].AcceptChanges();
DataAdapter objets look for changes to the DataSet and only update what's been changed (inserted, updated, and deleted). When DataAdapter.Update completes, it will automatically call DataSet.AcceptChanges .
Reminiscent of my younger years...
10 LOAD "SCISSORS"
20 RUN
|
|
|
|
|
Thanks again, Guru! Let's me try it out.
Khang
|
|
|
|
|
C# seems to use a lot of memory (compared to some of my C++ programs that do similar things.) I was just wondering what you all have observed and I would love to hear the comments of any Java programmers out there. Does Java’s garbage collection work better/faster….. ? (I hope this last question does not start a religious flame war.)
Is there some way to “view” a running C# app in Visual Studio and see what objects have a reference (and therefore are not up for garbage collection)?
|
|
|
|
|
I think I've read somewhere that the reason for it is the extremly large header included with the .NET framework. If for example you create an MDI application which spawns child windows inside the parent those new windows wont take a lot of memory.
|
|
|
|
|
Yes, I have noticed this too...I've assumed it was related to the .Net framework. I have used Java before this, though, and I think it was even more memory hungry.
There are only 10 types of people in this world....those that understand binary, and those that do not.
|
|
|
|
|
I'm trying to make an app that catches the clipboard data when somebody press print screen. The problem I'm facing is to determin if the user has pressed print screen, the event needs to be triggerd even if my app doesn't have focus. So what I'm wondering is if there's any reliable way to do this without hooks and that sort of stuff (which I know nothing about hehe). All I need is some keywords or perhaps a good article/tutorial .
just figured it out, no need to answer this one.
|
|
|
|
|
Since your application doesn't worn the desktop window, you'd have to set a Windows hook. They're not as hard as you think, and MSDN even has examples. Lookup the functions SetWindowsHookEx and UnhookWindowsHook . The topic "Win32 Hooks" even has sample code.
Another way might be to P/Invoke the functions SetClipboardViewer and ChangeClipboardChain . Then call SetClipboardViewer with your window handle (Form.Handle.ToInt32() ). When the clipboard is changed, your application is sent the WM_DRAWCLIPBOARD message (DWORD, 0x0308). You must also P/Invoke SendMessage so that when WM_CHANGECBCHAIN is passed (when the clipboard chain changes, i.e. a viewer is added or removed) you can pass the HANDLEs that you received from calling SetClipboardViewer . This may sound complicated, but it's not. Essentially, you're just inserting yourself in a chain and handling messages passed to that chain. When you get the WM_DRAWCLIPBOARD message, you can use all the .NET class library's members for accessing the clipboard, checking for DataFormats.Bitmap or some other string (even your own). This would tell you that an image was copied, though, not that the PrintScreen key was pressed.
You could compare the size of the image with the size of the screen, but that only gives you a probable screenshot.
Basically, a windows hook is the way to go if you want a true handle for PrintScreen. The other is just an alternative if you just want to know when an image was copied to the clipboard.
Reminiscent of my younger years...
10 LOAD "SCISSORS"
20 RUN
|
|
|
|
|
thx, I'm looking into it
|
|
|
|
|
I am writing an application that has two modes 1) Normal Windows Forms based UI operation, 2) batch mode no UI mode operation using the same codebase.
On application start I would like to test for a parameter, and, or read a configuration file flag to determine which mode to operate under, then if UI mode, instantiate the main form and operate Windows application normal. If batch mode, either branch to other application logic or operate with the main form minimized or invisible. To do this, I would like to launch the application from a non-form based class like AppStart.cs with the application main method hosted there instead of in the main form, and I would like to show a Splash screen while I do some setup configuration work before before real processing begins . So the flow would be like this:
1. Main method kicks in from generic class...
2. New thread is started to manage splash screen based on a timer...
3. Configuration file is read to check batch mode flag...
4. If mode is UI, then when Splash timer is finished do Application.run and instantiate main form...
5. If mode is Batch, then either instantiate main form invisible, or run the applicaion without the main form...
Can anyone point me towards and example of starting a windows application from a main class instead of from a form? I thing this will have something to do with using the application context, and threads to do what I'm trying to do...?
Thanks!
|
|
|
|
|
Hi. I have a combo box, that when the selection is changed, I dont want it to do anything (at the moment, as I am using dataBinding, it tries to change the index, as I have a listBox with different categories, and the comboBox changes that category). I want to it to stay in the same place until the user clicks on an update button. Anyone know how to achieve this?
|
|
|
|
|
This hangs...
Any clue ?
Thanx
|
|
|
|
|
I've got a webservice that works fine from my work machine but if I try it from home I get the following error message:
"The underlying connection was closed: an unexpected error occurred on a send"
Any ideas? I use a windows forms app to call the webservice. I'm connected to the internet and can access the website that host the webservice.
I'm stumpped!
Thanks in advance
Andy
|
|
|
|
|
Did you try checking the WebException.ProtocolError property.
- Kannan
|
|
|
|
|
Hi,
I have a very "simple" problem, but i dont know how to sove it. I want to show a contextmenu, where one menu item is a textbox (ex. Right click on a cell of a open access table in access).
Can anyone help me?
almigrp (Misel)
|
|
|
|
|
You're going to need to use owner-drawing. Basically, set the MenuItem.OwnerDraw property to true and do a lot of coding. There are some good articles about this in Dr. GUI.NET in MSDN.
Reminiscent of my younger years...
10 LOAD "SCISSORS"
20 RUN
|
|
|
|
|
Yes, that's right....you will need to owner draw (by setting to true) and then do your own drawing code.
I don't know how much this will help...but I wrote this article when I wanted to learn how to put images in menus.
http://www.codeproject.com/cs/miscctrl/CS_Menus.asp[^]
There are only 10 types of people in this world....those that understand binary, and those that do not.
|
|
|
|
|
Images are no problem, but i don't know how to create a textbox without binding it to a form.
I am stuck there
almi (misel)
|
|
|
|
|
hi,
I have some question on Image Transform. \
In my application, it contains an image that is drawn by Graphics.drwaImage(). the image's default size is 100 x 100 , how can I do, if I want to transform it to 200 x 200?
The other question, is there any way I can transform image without distortion?
Thank you.!
|
|
|
|