|
What is the correct way to use a a single quote in a access query. I try to load strings from one Tabel in access to another one, but some of the strings has single quotes in them. When I use a where clause or try to update with those strings in I get an error.
I tried to replace the single quotes with \', like this.
[string].Replace("'", "\'");
It didn't work, then i tried to replace it with the unicode value,
[string].Replace("'","\u2019");
I can't think of much else I can do.
Can anyone help me please.
thnxs
|
|
|
|
|
Put ' in [].
Mazy
You're face to face,
With the man who sold the world - David Bowie
|
|
|
|
|
doubling up on the single quote should work
ie
[string].Replace("'","''");
|
|
|
|
|
I have two problems.
The more important: how can I know if the user did hit the Print button or just saw the preview and close the window; the best whould be to close the dialog after the user press the Print button and let me know about this (return ... , delegate, event,...)
The other: how can I set the zoom? Default the dialog is very small, I managed to increase it's size but the zoom is still less then 100% and the text is not readable; I can not find anything related to zoom
|
|
|
|
|
I got this code a couple of days ago of the discussion boards, it worked for me.
foreach (Control c in this.printPreviewDialog1.Controls)
{
if (c is PrintPreviewControl)
{
((PrintPreviewControl)c).Zoom = 0.75;
}
}
Don't know about the print button.
|
|
|
|
|
I'm the one that originally posted that, and you could do the same thing for the print button. Just cycle through the controls (or even using the same code above) and if the control is a Button and has the right properties (if you're developing localized applications, don't check the Text property), and add an EventHandler to the ClickEvent .
Honestly, though, the best think you could do is check the DialogResult returned from PrintPreviewDialog.ShowDialog (inherited from CommonDialog ). If everything is set up correctly in the PrintPreviewDialog constructor, closing the form with the Close button (the X) should return DialogResult.Cancel , while doing anything else should return a different result. Just get the return value and put a breakpoint there to see what's returned. When possible, don't rely on hacks like I mentioned for finding the Zoom property of the hosted PrintPreviewControl .
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
I tried to get the DialogResult but hitting the Print does not close the dialog, so after printing the user will close the dialog so I'll get Cancel
|
|
|
|
|
Hi All,
I’ve an application that should do a huge number of HTTP requests using “POST” method as the following:
In a thread method:
<br />
while (!Stop)<br />
{<br />
<br />
if (requestsArray.Count == 0)<br />
{<br />
Thread.Sleep(500);<br />
continue;<br />
}<br />
<br />
hTTPRequest = (HttpWebRequest) HttpWebRequest.Create(url);<br />
hTTPRequest.Proxy = new WebProxy("proxyServer", proxyPort);<br />
hTTPRequest.Method = "POST";<br />
hTTPRequest.KeepAlive = false;<br />
hTTPRequest.SendChunked = true;<br />
hTTPRequest.AllowWriteStreamBuffering = true;<br />
hTTPRequest.ContentType = "application/x-www-form-urlencoded";<br />
hTTPRequest.Timeout = 30000; (30 Secs)<br />
hTTPRequest.ReadWriteTimeout = 30000;<br />
string postData = "Some params and values";<br />
byte[] Content = new byte[UTF8Encoding.UTF8.GetByteCount(postData.ToCharArray(), 0, postData.Length)];<br />
UTF8Encoding.UTF8.GetBytes(postData, 0, postData.Length, Content, 0);<br />
hTTPRequest.ContentLength = Content.Length;<br />
Stream writeStream = hHTTPRequest.GetRequestStream();<br />
try<br />
{<br />
writeStream.Write(Content, 0, Content.Length);<br />
writeStream.Close();<br />
}<br />
catch<br />
{<br />
Log the error…<br />
}<br />
}<br />
After two or three requests I got the following error logged in my database:
"The operation has timed-out."
But note that this request takes no time to be performed. I directly get this error before the time goes out! Or any network activity occurs!
Another point: Since I post to the same target, can I use one instance of HttpWebRequest instead of creating new instance per each request? Such as:
In the constructor:
<br />
hTTPRequest = (HttpWebRequest) HttpWebRequest.Create(url);<br />
hTTPRequest.Proxy = new WebProxy("proxyServer", proxyPort);<br />
hTTPRequest.Method = "POST";<br />
hTTPRequest.KeepAlive = false;<br />
hTTPRequest.SendChunked = true;<br />
hTTPRequest.AllowWriteStreamBuffering = true;<br />
hTTPRequest.ContentType = "application/x-www-form-urlencoded";<br />
hTTPRequest.Timeout = 30000; (30 Secs)<br />
hTTPRequest.ReadWriteTimeout = 30000;<br />
In the thread’s method:
<br />
string postData = "Some params and values";<br />
byte[] Content = new byte[UTF8Encoding.UTF8.GetByteCount(postData.ToCharArray(), 0, postData.Length)];<br />
UTF8Encoding.UTF8.GetBytes(postData, 0, postData.Length, Content, 0);<br />
hTTPRequest.ContentLength = Content.Length;<br />
Stream writeStream = hTTPRequest.GetRequestStream();<br />
try<br />
{<br />
writeStream.Write(Content, 0, Content.Length);<br />
writeStream.Close();<br />
}<br />
catch<br />
{<br />
Log the error…<br />
} <br />
But for the second request I got the following error:
"This property cannot be set after writing has started."
Can anyone help me please?
|
|
|
|
|
You're not getting the response, so the request isn't being commited. Also, you should actually close your streams in the finally block of a try/catch in case of errors (finally is always executed regardless of err or not):
Stream s = ...
try
{
s.Write(...);
}
finally
{
if (s != null) s.Close();
} After you fill your request stream, call HttpWebRequest.GetResponse and see if that helps:
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Console.WriteLine(response.StatusCode); See the documentation for HttpWebRequest and HttpWebResponse in the .NET Framework SDK for more information and examples, including examples of posting data.
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
Dear Stewart,
Thank you for your kind support. In real, I tried that, but I'm still getting the same error message in both cases
Any other ideas I'm more than confused
|
|
|
|
|
If the server is reporting a timeout, then it is there you have to look. Your client code looks alright (though I hope you actually did URL-encode your POST data), but remember that it's not the one reporting the error. It would seem that your server code has a problem where it is waiting for a request to finish or something similar. How quickly do you get an HttpWebResponse when you call HttpWebRequest.GetResponse . Put a breakpoint in there and see. Remember, if you're threading those threads won't block so your program won't appear to halt.
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
I am trying to get the exact character widths (and thus position/placement) of Arabic text which I am writing to the screen.
I have been trying to use “GDI32.dll” GetCharacterPlacementW. This uses a structure GCP_RESULTS which in turn contains a pointer to the text buffer and pointers to several array. One of these arrays, lpDx receives the distances between adjacent character cells.
I understand that .NET doesn't directly support a call to an unmanaged function which passes a structure with array pointers.
Apparently, though, there are two methods by which this can be achieved:
1) By manually marshalling the structure.
2) By using Pointers, ie unsafe code.
I find that I am out of my depth with this.
Does anyone have any C#/VB code for calling unmanaged code passing a structure with multiple array pointers?
Is there any better/easier way? Uniscribe, perhaps? Does anyone have a C#/VB code example for getting character widths for Unicode text with contextual shaping and combining characters?
|
|
|
|
|
Use StructLayoutAttribute and for poinetrs in the structre use IntPtr trype. You can look into MSDN for more info and example.
Mazy
You're face to face,
With the man who sold the world - David Bowie
|
|
|
|
|
A string is a character array, and the address of a string is the address of the first character. SAme with other arrays. For those params, it's no problem for the default marshalers to handle this. Just be sure to use the StructLayoutAttribute with CharSet.Auto and UnmanagedType.LPTStr with the MarshalAsAttribute .
As far as marshaling the pointers, you'll have to pin them so that the GC doesn't move them (or garbage collect them, although that shouldn't happen until they're out of scope) while the unmanaged code is processing. For information on that, see the fixed keyword in the .NET Framework SDK, under the C# language specification section (or just type "fixed Statement" in the help index).
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
Can anyone tell me how to read a File Property like the Title, Subject, Author...
System.IO.File can only read those simple File properties like File Size, Creation date...
I have tried using "Interop.DSOleFile.dll", it works...but It is not Strong Named....
I want something strong named that can read the File Property...
Thank You!!
|
|
|
|
|
You can make that interop assembly strong named. If you use VS.NET to import a COM typelib, before creating it right-click on your project, select Properties, and set your "Wrapper Assembly Key Name" or "Wrapper Assembly Key File" under the "Common Properties/General" section. If using tlbimp.exe from the .NET Framework SDK, you can use the /keyfile:FileName or /keycontainer:KeyName command-line switches.
To answer your first question, though - no. The .NET base class library does not support these additional streams. You have to either rely on interop'ing a COM library (like you've done) or P/Invoking all the necessary functions and defining the proper structures and consts (etc.).
There is a .NET library someone made and documented here on CodeProject that works pretty good. See the article, Accessing alternative data-streams of files on an NTFS volume[^].
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
Hello everybody
After alot of sleepless nights, I have finally finish my newest website dedicated to serve C# programmers with a C# Resource Windows, I hope everyone will enjoy using it and I hope the moderator don't treat this post as a spam ^_^;;
http://www.csharpusa.com or http://www.csharpgames.net
This isn't really a website since it would only work on Microsoft Windows with Internet Explorer 6, sorry to the Linux folks X_x;
I was formerly known as the C#n00b on this forum and I asked stupid questions because I'm a newest n00b to C#, I would like to give everybody a funny joke.
One day, C#n00b wanna study programming so he asked an old wise programmer to teach him, the old wise programmer said:"just open visual studio .net and create a new windows application and press F5", so C#n00b follow the direction and did what the old wise man said, then he realize there's a window popped up, the old wise guy said:"see? you just made your first windows application", C#n00b is so happy and excited and said:"omg, I made a software, I'm now a programmer, hahahahaha".
the end, not funny? oh well, I thought it was kinda funny.
C# Resource Windows
http://www.csharpusa.com
http://www.csharpgames.net
Super Robot Wars English Game Project
http://www.shintasoft.com
|
|
|
|
|
Wierd sence of humor you have say's Yoda
Q:What does the derived class in C# tell to it's parent?
A:All your base are belong to us!
|
|
|
|
|
i cannot for the life of me figure out how to get this to return a string that is not formatted in scientific notation
is there a simple guide or set of examples somewhere on how to use IFormatProvider?
msdn doesn't seem to provide any examples
edit: i found an example, it uses a mask... but why does the msdn page mention special characters (d/c/etc) for formating?
where can i find a reference for the available masks?
|
|
|
|
|
This is a link to really good site on how to format numbers:
http://authors.aspalliance.com/aspxtreme/aspnet/types/numericformatstrings.aspx
|
|
|
|
|
You keep reading the wrong things. Did you try reading the documentation for the NumberFormatInfo , which implements IFormatProvider ? You don't even need to specify this for numeric types in string.Format (or any other formatting method like Console.WriteLine ). There's also a big section on formatting in the .NET Framework SDK, which should be your first stop for .NET-related documentation, articles, and examples.
There is a simple solution for the scientific notation:
string s = string.Format("{0:e}", myNum);
s = myNum.ToString("e");
Microsoft MVP, Visual C#
My Articles
|
|
|
|
|
|
If anyone like to contribute to thsi site, please contact us.
|
|
|
|
|
is there any way faster then
using split()?
the lines are all the exact same format, with no nulls, etc
this is what i am using:
while (html_sr.Peek() >=0)
{
txt_file = html_sr.ReadLine();
user_info = txt_file.Split('\t');
SQLAction.InsertUpdateUser(int.Parse(user_info[5]),user_info[2],int.Parse(user_info[4]),double.Parse(user_info[3]),date_modified,int.Parse(user_info[1]),int.Parse(user_info[0]));
}
|
|
|
|
|
The first obviouse thing is:
while (html_sr.Peek() >=0)
{
txt_file = html_sr.ReadLine();
Why not use:
while((txt_file = html_sr.ReadLine()) != null)
{
}
Now, you no longer have to perform the peek operation and your test is against a value you would get anyway. (Since the RealLine method already performs some operation to determine whether it is at the EOF why duplicate the effort)
EuroCPian Spring 2004 Get Together[^]
"You can have everything in life you want if you will just help enough other people get what they want." --Zig Ziglar
"Get in touch with your Inner Capitalist - I wish you much success!" -- Christopher Duncan, Lounge 9-Feb-2004
|
|
|
|
|