|
Hello Hi
What I am struggled with is:
I have written a program in VC++ (API) that uses farsi texts. this program runs correctly on my computer without I do anything with language settings (I only typed farsi text in dialog boxes in Visual C++).
but when I run this program on another computer (which has installed farsi language on english version of windows), farsi texts didn't show correctly.
what I should do, without using Unicode?
Provide me with some sample code if possible.
Thanks a lot.
|
|
|
|
|
Well, first I would have to write the code and second it probably would not help you.
Apparently you have realized that if you are using Unicode it will eliminate most of your internationalization problems.
First: You need to make sure that Farsi is one of your region settings for the computer you are running the program on (control panel->Region and Language Options).
Second: If you want to be able to display both languages, then you need to specify the locale (language) in your program or at least be able to determine what locale the user has specified and select a font accordingly.
Yes, I know it sounds complicated and it is. But there is an upside to this, if you just want to support (2 laguanges) Farsi and (ASCII) English, then you can just make sure that all your text drawing uses a Farsi font. The reason this should work, is that all character pages (as far as I know) have the ASCII (English) character set built in.
P.S. This is all (experenced) guess work here, as I have not written any code that specificaly targeted the Farsi language. I know there is an article here some where witten by a guy, who is a university student in Iraq, that may have a better understanding of what your problems are. Try to find him, as I am out of ideas (at the moment).
INTP
"The more help VB provides VB programmers, the more miserable your life as a C++ programmer becomes."
Andrew W. Troelsen
|
|
|
|
|
Hi,
I've been trying to figure out how to open a file/url with the user's default browser but can't seem to find any info.
Is there a simple function like the "open" command of Mac OS X that opens whatever file you give it with the user's default program associated with that file type? Or will I have to muck around in the registry to find the correct program.
Thanks in Advance.
|
|
|
|
|
ShellExecute(NULL,"open","http://www.google.com",NULL,NULL,SW_SHOWNORMAL);
this is this.
|
|
|
|
|
khan++ wrote:
ShellExecute(NULL,"open","http://www.google.com",NULL,NULL,SW_SHOWNORMAL);
I Missed
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
|
|
|
|
|
Thanks for the help guys, works like a charm!
|
|
|
|
|
retro_coder wrote:
Is there a simple function like the "open" command of Mac OS X that opens whatever file you give it with the user's default program associated with that file type?
Yeap, try this
ShellExecute(NULL,"open","http://www.codeproject.com",NULL,NULL,SW_SHOWNORMAL);
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
|
|
|
|
|
Hi All,
I have created MFC (.exe) application. Now i want to convert
that application into ActiveX DLL.
How i can convert that existing application into ActiveX dLL.
without going thru MFC ActiveX wizard. Which necessary code
requried for that.
I will use that ActiveX DLL in VB.
if any one knows please answer me.
Regards,
Rajesh
|
|
|
|
|
rajesh_kapure wrote:
I have created MFC (.exe) application. Now i want to convert
that application into ActiveX DLL.
I am Afraid, you have recode it as I believe there is no Direct Solution available for you problem. But, you can wait for more suggestion from other people here!
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
|
|
|
|
|
Hello everybody,
I am developing a Browser Help Object in IE and encounter some problems:
- Get data sent by POST method from an URL.
- Send data to an URL by POST method.
How can we accomplish that? Do you have any ideas or suggestions?
Thanks.
Lan hue sau ai lan hue heo
Lan hue sau doi trong heo ngoai tuoi
|
|
|
|
|
Hi,
I guess you can get the data sent by POST method in DocumentComplete/
DownloadComplete events of the IE.
In addition to this you have to do some digging on interfaces IHTML*...
Hope this would help...
Cheers,
Vishal
|
|
|
|
|
nmhuy wrote:
Get data sent by POST method from an URL.
You can retrieve the data sent by POST before sending it to the Web Server. This article[^] clarifies it quite a lot.
nmhuy wrote:
Send data to an URL by POST method.
To achieve this, you have to build your page with aform[^] (type POST defined)with all the fields you want to send.
<FORM action="http://somesite.com/prog/adduser" method="post"><br />
...form contents...<br />
</FORM><br />
In the "action" field you have to insert the URL where you want to send the data with the method defined in the field "method" (POST).
I hope it helps,
Marc Soleda.
... she said you are the perfect stranger she said baby let's keep it like this... Tunnel of Love, Dire Straits.
|
|
|
|
|
Send data to an URL by POST method.
I want the BHO send data automatically to an URL by POST method. In case of GET method, the BHO can easily send data to an URL by using the Navigate method of the IWebBrowser (e.g MyWebBrowser.Navigate2("http://...?data1=abc&data2=xyz"). But how can we send data an URL in case of POST method?Thanks.
Lan hue sau ai lan hue heo
Lan hue sau doi trong heo ngoai tuoi
|
|
|
|
|
nmhuy wrote:
I want the BHO send data automatically to an URL by POST method
Create a function on JavaScript or VBScript inside your HTML code that submits the form and make this JS function available from the VC++ code to call it when you decide (automatically or not).
To do this look for information about CHtmlView and its method GetScript()->Invoke().
Marc Soleda.
... she said you are the perfect stranger she said baby let's keep it like this... Tunnel of Love, Dire Straits.
|
|
|
|
|
Take a look to these good articles. They'll help you to perform JS calls from VC++:
Web Gui[^] or JavaScript calls from C++[^]
Marc Soleda.
... she said you are the perfect stranger she said baby let's keep it like this... Tunnel of Love, Dire Straits.
|
|
|
|
|
I need to do something like a network monitoring tool but would like to keep it simple. I just need to block/allow certain ip addresses. Anyone can point me out what C++/C# APIs/classes i should be looking into? Thanks.
<font=arial>Weiye Chen
Life is hard, yet we are made of flesh...
|
|
|
|
|
|
Thanks.
<font=arial>Weiye Chen
Life is hard, yet we are made of flesh...
|
|
|
|
|
Hi Chen,
Weiye Chen wrote:
I just need to block/allow certain ip addresse
you can check article, i am sure it will suit your requirement:-
http://www.codeproject.com/internet/smfirewall.asp[^]
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
|
|
|
|
|
Thanks. I'll check that out.
<font=arial>Weiye Chen
Life is hard, yet we are made of flesh...
|
|
|
|
|
Hi all,
I have a trouble with CStringArray class, it is so difficult to me that I'd like to get help from you.
My project has a DLL and a Exe file. In the DLL, threre is a function that used to get a list of strings, I use CStringArray to get the list strings.
For example :
__declspec( dllexport ) void GetCStringArr(CStringArray* pCStringArr)
{
CString cstrText;
for (int i=0; i< 100;i++)
{
cstrText.Format("%d",i);
pCStringArr->SetAtGrow(i,cstrText);
}
}
In the application project, I call GetCStringArr function to get the list string, after calling GetCStringArr function, I have the needed list string and can access all strings in the list(CStringArray),everthing is OK but when I release the CStringArray object, my project has a exception :
// m_ArrText is a CStringArray object, it is a member variant of //CTestCstringArrDlg class
void CTestCstringArrDlg::OnGetButton()
{
GetCStringArr(&m_ArrText);
for (int i=0;i<10;i++)
{
MessageBox(m_ArrText.GetAt(i));
}
CTestCstringArrDlg.RemoveAll(); // This line code has exception
}
If I declare, use and release CStringArray variant in only application or only in Dll, everything is OK. I don't known why when I declare CStringArray in App but add it's item string in Dll, I can get all Item string in CStringArray but when I release CStringArray I alway have problem.
Please help me to solve the problem!
|
|
|
|
|
Objects allocated within the DLL should only be released by the DLL. Expose a new method in your DLL that frees up a CStringArray and call that on m_ArrText .
/ravi
My new year's resolution: 2048 x 1536
Home | Music | Articles | Freeware | Trips
ravib(at)ravib(dot)com
|
|
|
|
|
Thanks for your help, I have tried to do as your comment, it is useful for me and is my need.
Thank you very much.
|
|
|
|
|
It might be because of the EXE and DLL being built with different options or defines...
Does sizeof(CString) give the same result in both the EXE and DLL?
--
jlr
http://jlamas.blogspot.com/[^]
|
|
|
|
|
Make sure the DLL is an MFC extension DLL and that the App uses MFC as a shared DLL. This way you will be able to allocate/release memory and objects wherever you want.
|
|
|
|