|
Dear All,
i want to develop a notepad as comes with MS windows.
it should support unicode like in notepad.
plz help me and guide me if there is code example
plz reffer me.
omar lodhi
|
|
|
|
|
There is a sample of WordPad that come with VC and should also be able to have most of Notepad or Wordpad functionality by generating an application with the Wizard. Simply select the appropriates options.
Philippe Mori
|
|
|
|
|
Hello,
Is there any good web resource teach or list all the tricks of code optimization with vc++? For example, if I define a struct with all 32-bit verable and run it with a 32-bit processor, the code will run faster. If I want to write some data in a file and define a struct like this:
struct filedata {
short a;
int b;
char c;
};
Since the struct is just going to use in-memory but write out to a file. I do not want to waste space by appending dummy veriable to make them all 32-bit. I'll have to access it like this...
filedata *pFiledata = (filedata *)memory_regon;
... use the pFiledata to update the memory_regon
Is this going to run a lot slower then appending dummy bytes into the struct? Is there any good why I can improve this code without modifing the data struct since the file format is already defined.
Thanks for advice!
Hiusing
|
|
|
|
|
|
|
The second argument of the winmain is HINSTANCE hPrevious. this is the handle to the previous instance of the application. how we can use it to control the creation of the application instance so that only one instance should be running at one time.
|
|
|
|
|
|
Yes, this parameter in a 32-bits application is always set to NULL. To test an instance of an application, you can for example test the existence of a Windows Class.
For instance, if you main window class name is "MyClassName", you can use the function FindWindow ("MyClassName", NULL). If this function return not NULL, then another instance of your application is running.
Thks in advance!
Appstmd
|
|
|
|
|
The hPrevious parameter is useless in Win32, it is only there for backward compatibility.
For an in-detail discussion of how to perform a correct instance check (the usual recommended ways to use FindWindow/Mutex lead to unexpected results ), look at this article.
Some ready-to-use code is available here, but I strongly recommend to read the above article first.
--
Daniel Lohmann
http://www.losoft.de
|
|
|
|
|
when i used my third party dll i got dll runtime error.i included lib file in project settings.In spite of that it gives error.i also included header files.
No dll was found in the procedure.
|
|
|
|
|
|
It seems to be loading problem. Is the dll in the directory so it can be found.
Are also the header, libs and dll of the same version?
Your error description is to short to answer more concrete.;)
|
|
|
|
|
Hi,
How can put tooltips for controls like combobox,button etc .. in a win32 application?
Thanks
Neha
|
|
|
|
|
Hi,
First thing you need to do is create a window for your tooltips. ex:
<br />
hwndToolTips = CreateWindow ( TOOLTIPS_CLASS, NULL, WS_POPUP, 0,0,0,0, hwndParent, NULL, hInstance, 0 );<br />
Once, you've created the tool tip window, you have to activate tooltips, do this by sending the TTM_ACTIVATE message to the Tool tip window (hwndToolTips).
Now, you can add tool tip to either a control or a rectangular area of the parent window. To add a tooltip, simply send the message:
SendMessage ( hwndToolTips, TTM_ADDTOOL, 0, &tooltip );
where "tooltip" is a TOOLINFO structure. (see MSDN)
There are more messages for tooltips, just look up "TTM_" in MSDN. You don't have to worry about destroying the tool tip window, Windows will take care of it for you since its a child of "hwndParent".
Fortran
|
|
|
|
|
Fortran and Neha, I am having the same type of problem that the original thread speaks of. I have created a window and I am sure that is being done correctly. I also set the position of the window, where I would like the tooltip to appear. The problem is, my call to add and activate the tooltip keeps failing. I am hoping by replying to this thread it will somehow get to one of you and you might be able to give me some insight. The following code is how I am initializing the toolinfo structure. Any help you might be able to provide would be greatly appreciated.
/* INITIALIZE MEMBERS OF THE TOOLINFO STRUCTURE */
ti.cbSize = sizeof(TOOLINFO);
ti.uFlags = TTF_SUBCLASS | TTF_IDISHWND;
ti.hwnd = hwnd;
ti.hinst = _Module.GetModuleInstance();
ti.uId = (UINT_PTR)hwnd;
ti.lpszText = (LPTSTR)wszTTtext;
// ToolTip control will cover the whole window
ti.rect.left = rect.left;
ti.rect.top = rect.top;
ti.rect.right = rect.right;
ti.rect.bottom = rect.bottom;
if(!SendMessage(hwndTT,TTM_ACTIVATE,(WPARAM)TRUE,0)){
WriteLog(_T(" > Could not Activate TooltipControl\r\n"));
}
/* SEND AN ADDTOOL MESSAGE TO THE TOOLTIP CONTROL WINDOW */
if(!SendMessage(hwndTT, TTM_ADDTOOL, 0, (LPARAM) (LPTOOLINFO) &ti)){
WriteLog(_T(" > Did not Create TooltipControl\r\n"));
}
|
|
|
|
|
I'm using CPaintDC class for drawing directly on a window.
Right now I would like to draw into a CBitmap object and then copy it to screen to avoid blinking and to make imege storing possible.
Any simple way to create CPaintDC that draws into CBitmap object?
Railgun is like a Gilette Mach 3 - it does the job with one, easy stroke.
|
|
|
|
|
[CoY0te] wrote:
Any simple way to create CPaintDC that draws into CBitmap object?
Actually, it'll be CDC (not CPaintDC) which draws into CBitmap. There should be CMemDC class rigt here on CP which does exectly that.
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
Thank You. I would probably spend some time looking for it in the MSDN before i would find out that MFC doesn't support drawing into CBitmap this way. I'll check out that CMemDC class right now.
Thank You again.
Greetings from Poland, heh.
Railgun is like a Gilette Mach 3 - it does the job with one, easy stroke.
|
|
|
|
|
Hi!
I would like to get a message when a key is pressed in a dialog box. But my Dialog Procedure doesn't receive the Windows WM_CHAR, WM_KEYDOWN or WM_KEYUP messages. I think is due to the fact that another control got the focus, for example a button.
Is there a way that my Dialog Procedure receive theses messages anyway, like in Visual Basic for example when the KeyPreview property is set to true?
Thks in advance!
Appstmd
|
|
|
|
|
In MFC, PreTranslateMessage would be a good place to check for WM_CHAR. If you're on Win32 API, things are more complicated...
Tomasz Sowinski -- http://www.shooltz.com
- It's for protection - Protection from what? Zee Germans?
|
|
|
|
|
|
Thanks you, but I don't use MFC. I'm programming with the Win32 API. Is there an equivalent to the PreTranslateMessage in Win32 API?
Thks in advance!
Appstmd
|
|
|
|
|
Hi,
Strange problem... I've constructed a dll (mfc extention) with VC++ 6.0 for another application that use it.
The project of this DLL use 2 files added:
ExportFile.h and ExportFile.cpp
where we can found for ExportFile.h:
#ifndef __EXPORTFILE_H_
#define __EXPORTFILE_H_
#define DLLEXPORT _declspec(dllexport)
typdef struct {
BYTE member1;
BYTE member2;
} TCHA_DIG;
DLLEXPORT DWORD Init(TCHA_DIG* channel);
DLLEXPORT void StartAcquisition(TCHA_DIG channel);
#endif
And for ExportFile.cpp
#include "stdafx.h"
#include "ExportFile.h"
DWORD Init(TCHA_DIG* channel)
{
return 0;
}
Ther's no error and no linking problem when I compile this project
The application (which use this DLL) use the file MyProject.lib and ExportFile.h well (the settings are good).
The problem is as follows:
when I start the application (which use the DLL) a message box tell me
"The entry point for ?StartAcquisition@@YAXPAUTCHA_DIG@@@Z procedure was not found in the Dynamic Linking Library MyDLL.DLL"
But, the most strange is that all is OK on my OTHER PC...(the 2 PC work with win2k and VC++ 6.0)
Please help me... thanks in advance...
Hello World!!!
from Raphaël
|
|
|
|
|
Maybe (and if thats not the case I apologize), but maybe you have at the Application directory an older version of the Dll you once developed. check if the app is looking for the right dll and the right lib.
Guy.
|
|
|
|
|
Of course... Thanks for this answer...
Hello World!!!
from Raphaël
|
|
|
|