|
Hi Prasad,
The Code i am giving will get you clear picture.
//====================================================
HICON CGTD2to32ColorWnd::mf_GetSelectedLibClrIcon()
{
return mf_GetLibClrIcon(mui_ColorSelected);
}
//=====================================================
which inturn calls this function
//=====================================================
HICON CGTD2to32ColorWnd::mf_GetLibClrIcon(long pl_LibClr)
{
CImageList *lpi_LibToolbarImageList = NULL;
HICON lH_Icon = NULL;
HICON lH_ReturnedIcon = NULL;
// Get the Toolbar internal imagelist.
if(pl_LibClr == ID_NOCOLOR_SELECTED && mb_ShowAllColorButton)
{
lpi_LibToolbarImageList = mC_wndAllColorToolBar.GetToolBarCtrl().GetImageList();
}
else
{
lpi_LibToolbarImageList = mC_wndColorToolBar.GetToolBarCtrl().GetImageList();
}
int li_BtnIdx = mf_GetLibButtonIndex(pl_LibClr);
// Extract the HICON from the toolbar's Image list for the currently selected
// Patten and return the same.
if(lpi_LibToolbarImageList)
{
lH_Icon=lpi_LibToolbarImageList->ExtractIcon(li_BtnIdx);
// Copies the lH_PattrenIcon into lH_ReturnedIcon and deletes the lH_PattrenIcon.
lH_ReturnedIcon = (HICON)(::CopyImage(lH_Icon,IMAGE_ICON,0,0,LR_COPYDELETEORG));
lH_Icon = NULL;
}
// Retrun the copied Icon.
return lH_ReturnedIcon;
}
//=====================================================
in short it will Copy the Icon using
lH_ReturnedIcon = (HICON)(::CopyImage(lH_Icon,IMAGE_ICON,0,0,LR_COPYDELETEORG));
and Return the Icon Handle
Uday kiran
|
|
|
|
|
uday kiran janaswamy wrote: // Copies the lH_PattrenIcon into lH_ReturnedIcon and deletes the lH_PattrenIcon.
lH_ReturnedIcon = (HICON)(::CopyImage(lH_Icon,IMAGE_ICON,0,0,LR_COPYDELETEORG));
lH_Icon = NULL
You need to use DestroyIcon to free memory for icon created by using CopyImage .
So, use DestroyIcon appropriately in your code.
|
|
|
|
|
uday kiran janaswamy wrote: But there is a Memory Leak...
How are you verifying this?
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Hi David,
In the Windows Task Manager GDI Objects.
1) i am clicking the Process Tab so i am getting the GDI Objects. where the Leak is Showing Clearly.
Please help me out.
Uday kiran
|
|
|
|
|
uday kiran janaswamy wrote: so i am getting the GDI Objects. where the Leak is Showing Clearly.
So instead of a memory-leak you have a GDI-resource-leak.
Also, you did not read the docs to ::CopyIcon. What hindered you?
--fixed typo
"We trained hard, but it seemed that every time we were beginning to form up into teams we would be reorganised. I was to learn later in life that we tend to meet any new situation by reorganising: and a wonderful method it can be for creating the illusion of progress, while producing confusion, inefficiency and demoralisation."
-- Caius Petronius, Roman Consul, 66 A.D.
|
|
|
|
|
I want to convert a base-100 number into a decimal number.. the thing i dont understand is what is representation of base-100 number? i mean how to differentiate b/w numbers.. Hex uses A,B,C,D,E and F. but how are the digits represented in base-100????
any help, link will be appreciated
thanks
|
|
|
|
|
are you sure you have a base-100(dec) instead of a base-100(bin - base-4) ? lol
seriously, i'm not sure at all such a thing really exist, not find its point of interest.
itoa()[^] documentation for example talks about base-36 max (the 10 digits, plus the 26 latin letter of the alphabet
|
|
|
|
|
Your question doesn't really make sense: a number is a number. The thing that changes is how this number is represented (hex, decimal, ...). It is like have 16 apples in a bucket. You can say "I have 10 (decimal) apples" or you can say "I have 0x10 apples". But in both cases, your number (the number of apples) is still the same.
So what do you want to do exactly ? Convert from a string (of a certain representation) to a number ? Or the opposite ? Or converting from a string to a string ?
BTW, I don't know how base-100 numbers are represented and I even never heard of any use of that. For what purpose are you using that ?
|
|
|
|
|
I worked with a guy once that used a base-36 numbering system before. I don't know the details, other than it used 0-9 and A-Z. Base-100 seems a bit far-fetched. Do you have any reference material?
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
|
Ok, but why do you need to convert it? As I understand it, the base-100 format is used internally by Oracle.
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
I want to send data to oracle using OCI in number format. Oracle is capable of doing the conversion implicitly but i have to send it in as a number as specified by the specs! that is as unsigned char number[21];
|
|
|
|
|
Is the Oracle field a NUMBER or an INTEGER ? Can you bind to a BINARY_DOUBLE datatype?
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
|
There's an example here about halfway down the page that shows a value being stored in a NUMBER field (i.e, partno). Is that of any help?
"Approved Workmen Are Not Ashamed" - 2 Timothy 2:15
"Judge not by the eye but by the heart." - Native American Proverb
|
|
|
|
|
Just a quick and probably stupid question. I am currently downloading the latest DirectX SDK, which I believe is for DX10. Would this require my end users to have DX10 installed or is it backwards compatible to lets say DX7?
I know users can simply download a newer version, or I can ship the redistritubles, but I don't want to do this if it can be helped.
Also, MSDN lists the minimum OS required for all the standard API functions, but there is no mention of any DX api's in there. Is there a similar documentation or even and add in to the MSDN?
|
|
|
|
|
if you develop with the DX10 SDK then you do need to run with DX10 runtime
I have never seen anything for directx at the api function level with regards to minimum OS requirements but microsoft does tell you what the minimum os is for DirectX
http://msdn.microsoft.com/directx/sdk/[^]
I believe for DX10 it says:
This SDK will install on Windows XP, Windows Server® 2003, Windows Vista RC2, and Windows Vista RTM using Visual Studio .NET 2003 or 2005.
cje
|
|
|
|
|
Hi
I am getting a couple of warnings come up when compling my project
i would rather not have these warnings appear, any ideas how i can get rid of them or what i am doing wrong which is causing them to appear
thanks
Simon
warning C4995: 'CDaoDatabase': name was marked as #pragma deprecated
on line
CDaoDatabase db;
and
warning C4995: 'CDaoException': name was marked as #pragma deprecated
on line
catch( CDaoException* e )
|
|
|
|
|
si_69 wrote: any ideas how i can get rid
sure, don't use them !
if they've been marked as deprecated, it's to tell you that you shouldn't use it ; of course, an alternative way exist, and you have to find it (maybe documented directly in the deprecated stuff)
|
|
|
|
|
In your project settings you can define CRT_SECURE_NO_DEPRECATE which will disable all deprecation (not really a good idea)
or
In the files that are giving you the warning, use the
#pragma warning (disable : 4995)
Hope that helps.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
this will only hide the warnings, but the code will remain "dangerous"
|
|
|
|
|
I agree - but if you insist on using DAO and insist on not having the warning appear, that is you only option AFAIK.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
krmed wrote: but if you insist on using DAO and insist on not having the warning appear, that is you only option AFAIK.
depends, all deprecated element have a by-path solution
|
|
|
|
|
I'd be curious to know what the other solutions are?
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
as i said in my previous post, if something is deprecated, it is because something better superseeded it.i have no knowledge on this particular point, buti'mpretty sure the deprecated stuff documentation talks about where to find the replacement solution...
|
|
|
|