|
You need to also supply the size of an NVarChar field. I assumed Int because you didn't say. If the field is declared as nvarchar(20), use
SqlCeParameter param1 =
new SqlCeParameter( "@userID", SqlDbType.NVarChar, 20 ); SQL Server CE 2.0 doesn't care what you set the name of the SqlCeParameter to, and accepts only a ? character as a parameter marker (as you found out). This is different from the desktop SQL Server, which uses named parameters with a leading @ symbol.
You may also need to call cmd.Connection.Open() before calling Fill . If an exception is thrown, check the SqlCeException object's Errors collection for more information.
Stability. What an interesting concept. -- Chris Maunder
|
|
|
|
|
Yes i have checked all these things, like the type of the paramter and the size. And I wrote it in the previous posting - The code work without problems, when I quote directly the value, for example hattl70, so it cannot be anything with the connection because otherwise the statement with the direct value would also not work.
regards
patrick
|
|
|
|
|
Is it in any wise possible that this error causes by the replication, because I created the tables on the desktop and replicated it to the SQL Server CE on my PocketPc. Maybe that the NVarChar was in that way converted in another datatype or anything else??
regards
patrick
|
|
|
|
|
Unfortunately your code does not work, I wrote it first without the DateTime Statement in that way:
string help = "hattl70";
string selectString =
" Select " +
" Priority, Problem, EmailClient " +
" From JobDescription " +
" Where UserEngenieerId = " + help +
" Order By Priority ";
dataSet = new DataSet("Jobs");
daptJobs = new SqlCeDataAdapter(selectString, strConn);
daptJobs.Fill(dataSet,"Jobs");
DataTable dtabJobs = dataSet.Tables["Jobs"];
dgridDisplay.DataSource = dtabJobs;
I always got a SqlCeException. But the error must lie in the Select Statement because when i wrote it with indicating directly the value it works.
Does anybody know what went wrong here? (
best regards
patrick
|
|
|
|
|
You have not put quotes around the help insertion. However, if you take Mike's advice to use parameterised queries your application will be more secure also because it is one of the defences you can put up against SQL Injection Attacks[^]
Do you want to know more?
Vogon Building and Loan advise that your planet is at risk if you do not keep up repayments on any mortgage secured upon it. Please remember that the force of gravity can go up as well as down.
|
|
|
|
|
No more ideas??? (
patrick
|
|
|
|
|
HI~
I want to know the advantage of writing a Window Service instead
of writing a normal window application. It seem to be that swindow
service is kind of application that can be start automatically, or stop
or restart by the Window Service Control Manager. But there seems no more
advantage from it. And all those can be achieved by writing a normal application also. Can the window service communicate with the shell or from other processes (like IPC) so that it excels normal application ?
thanks
|
|
|
|
|
1. The service control manager can restart a service automatically in case of exceptions.
2. A service can run as any user account or system authority.
3. The service control manager checks dependencies (if there are any).
4. You can force a service to be started with Windows, and prevent it from being stopped by the user.
|
|
|
|
|
Just to expand on point 4 above - You can get an application to start WITHOUT any user being logged on. This is one of the main things a service can do that a normal app cannot.
|
|
|
|
|
Services are not meant to have a user interface. They are applications that just provide "services". Such as a Web Server, DHCP Server, an Indexing Service, Network DDE, Authentication Service, ... These servers don't have a user interface and don't need one. They provide their services through an exposed API and/or through communications channels. They run regardless if a user is logged in or not.
There is no question about services having an advantage, but rather these servers REQUIRE that they are run as services. For instance, the services that a Web Server or DHCP Server provides has no use for a user interface, they must run and be available so long as the machine in turned on, and neither cares if a user is logged in or not. Since neither requires any user interaction in order them to work, these are the perfect candidates for a service app.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hi~
I add a process object to the windows service by choosing the "process" in component of toolBox. I specify the processstartInfo and try to create a process when the service start(statement "process1.Start()" is inside "onStart()" method). However, the process only appear in the task manager but the window of the application doesnot appear. Why this happen?
if the type of service is "Local system", the problem above happens. if the service is "Local service", when i try to start the service, a message box come out and said "The service has started and then stop. Some services will stop if they cannot be executed. E.g efficiency record or alert services".
What is the difference between local system and local service?
Thanks
|
|
|
|
|
In order to interact with the desktop you must check the "Interactive" setting in the service dialog, or when you install the service set this property to true.
As for the accounts, here is some info straight from MS:
There are three built-in service accounts:
. LocalSystem: The LocalSystem account is a predefined local account.
It has extensive privileges on the local computer, and acts as the computer
on the network. The name of the account is LocalSystem. This account does
not have a password.
. LocalService: The LocalService account is a predefined local
account. It has minimum privileges on the local computer and presents
anonymous credentials on the network. The name of the account is NT
AUTHORITY\LocalService. This account does not have a password.
. NetworkService: The NetworkService account is a predefined local
account. It has minimum privileges on the local computer and acts as the
computer on the network. The name of the account is NT
AUTHORITY\NetworkService. This account does not have a password.
|
|
|
|
|
HI~
But where should i check the interactive setting in the service dialog and where should i set the property to be true?
Thanks
|
|
|
|
|
Ok, goto the Services applet (Start-->Control Panel-->Adminstrative Tools-->Services).
Find your service and double click (or Right Click-->Properties)
Goto the second tab (Log On)
Choose "Local System Account" radio
Check box labeled "Allow this service to interact with the desktop"
|
|
|
|
|
Thanks^.^
Then can I set this property in my new windows service in program? Then this property can be set automatically after installation of the windows service.
Also, can I write a UI for the windows service to call? For example, in the service solution, add a new project which contains a form. However, when I create a new instance of the form and show it on the service start (i.e inside the onStart() method, there are 2 statements : Form1 f1 = new Form1(); f1.Show();), the form has been shown but the form hang. The controls inside the form cannot be shown and the title of the form show that the form has no response. Is there anything goes wrong?
Thanks
|
|
|
|
|
Hi guys
Does anyone know how to get the label names from logical drives in C# .Net? For example, if I use Directory.GetLogicalDrives(), how do I get the LABELs of the drives:-
- A:\ -> Floppy Disk ( A: )
- C:\ -> Local Disk ( C: )
- E:\ -> CD_ROM ( E: )
Thanks
|
|
|
|
|
|
Hi,
I am trying to create a Bitmap image using my code tht i posted previously. But now i am banging my head on how to create a BMP image exactly from a Array of pixeldata. I am having a 1D array consisting of Pixel RGB data (RGBRGBRGB....). If i use the CreateBitmap function what values should i have to use exactly as its arguments for nPlanes and nBitsPerPixel.
Plz.... help me on this... how to create a BMP image from this array in C#.
Cananyone tell me how i can create a bitmap image for my array of pixeldata.
According to MSDN the last argument for createbitmapfunction is (Pointer to an array of color data used to set the colors in a rectangle of pixels. Each scan line in the rectangle must be word aligned (scan lines that are not word aligned must be padded with zeros). If this parameter is NULL, the contents of the new bitmap is undefined.).--- wht does this actually mean does this array means my pixeldata array or not....?
thanks in advance,
Suman
|
|
|
|
|
the answer for this question was posted back a few weeks ago (maby months i cannot remember) please search for it
|
|
|
|
|
Is there a way to make an application like paintbrush. With VC6, you can use the SDI using the CView. Thanks
<italic>Work hard and a bit of luck is the key to success. You don`t need to be genius, to be rich.
|
|
|
|
|
Here's a link to a (very) complicated Paint program:
http://rbrewster.members.winisp.net/pdn.html
It's probably a lot more than you're looking for but it has some nifty custom controls that are very informative.
Here's a link to a VC++ program on this site by Christian Graus:
http://www.codeproject.com/vcpp/gdiplus/doodle.asp
It is also informative but if I remember it's not managed code, although I'm sure you could do the same work even easier in C#/.NET. I should post my own C# paint program!
vir·tu·al re·al·i·ty
n. Abbr. VR
A computer simulation of a real or imaginary universe in which Microsoft APIs are thoroughly documented and behave in an entirely logical manner.
|
|
|
|
|
Hi guy , i would like to have a Find search function like in Ms Excel to search for specific keyword in the list view. Could anyone help me to do so.
Currently i can only get the index of the item in the list view but i don't know how to make the findnext function work, i.e. return the index of the list view item then if the findNext invoke again, the next index of list view will be returned until there is no more match.
Here is the code
//flag : 1 for match case, 0 for match whole word
public System.Collections.ArrayList ListViewItemIndex(System.Windows.Forms.ListView lstView,string strKeyword,int flag)
{
int itemIndex=-1;
System.Collections.ArrayList list = new System.Collections.ArrayList();
foreach(System.Windows.Forms.ListViewItem item in lstView.Items)
{
foreach(System.Windows.Forms.ListViewItem.ListViewSubItem subItem in item.SubItems)
{
if(flag==1)
{
if(subItem.Text.IndexOf(strKeyword)>=0)
{
itemIndex = item.Index;
list.Add(itemIndex);
}
else
itemIndex = -1;
}
if(flag==2)
{
if(subItem.Text.Equals(strKeyword)){
itemIndex = item.Index;
list.Add(itemIndex);}
else
itemIndex = -1;
}
}
}
return list;
}
Thank you
Popoxinhxan
|
|
|
|
|
HI~
We use "Application.Run(new Form1()) to start a thread of a program.
Can we not use Application.Run(new Form1()) , but the thread is still running (waiting for the command?). I would not like a form appear on the screen. Thanks~
|
|
|
|
|
Instead of doing Application.Run(new Form()) do Application.Run(new AppContext()) where AppContext is a class that derives from ApplicationContext. This is used to define when your application exits. But you can also use it delay when to show the main form, or you can go without showing a main form.
|
|
|
|
|
Hi all,
I am creting a Bitmap image by using a two dimensional array of pixel data.
here is the procedure that i have gone thru...
first I have read the height and width of the original image which is (2544 X 1650).. since 1650 is not divisible by 4 i have used extra 2 columns to make it 1652 which is divisible by 4 (my actual array is 2544x4952 [since for R =1650, G=1650, B=1650 and 2 extra columns]). Now after copying each pixel value in the array for each line at the end i am inserting zeros for the extra 2 columns. Can we use an int array of data for this function?...I have checked for the approximate size of the resulting imge which goes around 12MB less than the specified 16MB for this function).Now I am calling the CreateBitmap function as follows...
hBitmap = PlatformInvokeGDI32.CreateBitmap( Width, Height, 3, 24, PixelData);
but this function is returning me a null value.
Am i calling it right ( I mean arguments in the function). I am using 1650 as the value for width argument (is it right).
then I am doin...
m_Bitmap = System.Drawing.Image.FromHbitmap(hBitmap);
Please help me how can i create a bitmap image by using above functions....
here is my source code snippet...
...
int[,] PixelData;
int Height=0, Width=0, j=0;
if(DialogResult.OK == openFileDialog.ShowDialog())
{
IntPtr hBitmap; ChosenFile=openFileDialog.FileName; this.Text = ChosenFile; PixelData = ConvertFile(ref Height, ref Width);
hBitmap = PlatformInvokeGDI32.CreateBitmap( Width, Height, 3, 24, PixelData);
if (hBitmap!=IntPtr.Zero)
{
m_Bitmap = System.Drawing.Image.FromHbitmap(hBitmap);
}
else
j=0;//just for a break point i initialized it
this.AutoScroll = true;
this.AutoScrollMinSize = new Size ((int)(m_Bitmap.Width * Zoom), (int)(m_Bitmap.Height * Zoom));
this.Invalidate();
}
public class PlatformInvokeGDI32
{
#region Class Functions
[DllImport("gdi32.dll",EntryPoint="DeleteObject")]
public static extern IntPtr DeleteObject(IntPtr hDc);
[DllImport ("gdi32.dll",EntryPoint="CreateBitmap")]
public static extern IntPtr CreateBitmap
(int nWidth, int nHeight, uint cPlanes, uint BitsPerPixel, int[,] lpvBits);
#endregion
#region Public Constructor
#endregion
}
thanks in advance,
Suman
|
|
|
|