|
I was helping by not providing the wrong information
|
|
|
|
|
those are implemented as dockable windows called DeskBands. I didn't dig much into it. See here.
In Win7, better to use a taskbar button with a thumbnail toolbar, as Deskbands are no longer recommended. From Vista onwards there is a ITrayDeskBand Interface
Do CoCreateInstance on this interface, call ShowDeskBand() with CLSID of toolbar which you create to show on task bar.
Please let us no how how you are acheiving the task
|
|
|
|
|
hi i am using Visual C++ 2005 setup. if i installed the setup then it showing error i posted below.The error is only in Setup,if i execute the application using VC++ 2005 wizard it is working.
Microsoft Visual C++ Runtime Library
Runtime Error!
c:program Files\myapp.exe
"This application has requested the Runtime to terminate it in unusual way.
Please contact the application's support team for more information".
Please help how it can be fixed.
|
|
|
|
|
Hello Friends
I am creating a application on 32bit OS.but now I want to run that application 64bit native OS not on WOW64(that is 32bit compatible).
To do that I updated 64 bit compiler on my 32 bit machine which is having 32 bit OS.Through Configuration Manager i made following changes:
1)I added x64 new active solution platform.
After that i recieve that Error:
error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
And after this I googled And tried all these things:
1)First i searched on code Project and found one thread discussing abt same but no result.
2)After setting x64 new platform In Configuration Properties,linker,advanced,target machine was Machinex64 and I tried by changing to x86 and not set also.
3)I tried by removing additional option from command line under Linker which is under configuration Properties.
And After that I tried all these things on 64bit OS with 64bit machinr but same error.
please Give me some Ideas.
Any Help will be appreciated.
Thanks & Regards
Yogesh Sikri
modified on Monday, March 29, 2010 6:53 AM
|
|
|
|
|
this happened to me a few weeks ago. i had to manually edit the .vcproj files. open them up in an XML editor, then go through each configuration node (Release Win32, Release x64, etc) and make sure there are no MachineType attributes on any of the sub-nodes which don't match the configuration type.
|
|
|
|
|
Thanks Chris,I also got it to run with your method.
But,Isnt there any there method ?So that i dont need to change maually again and again.Or any other ideas?
Anyway,Thanks A Lot.
regards
yogesh
|
|
|
|
|
i only had to change mine once.
|
|
|
|
|
I am also changing one time but I have to change too many dll thats Y I was asking.
Its Fine.
Regards
Yogesh
|
|
|
|
|
sorry, i don't know of a way to automate the process, or to do it through the UI.
i suppose you could write an XSL transform to do this. i've written many simple XSLTs to manipulate vcproj files (to strip out unused configurations and to change paths, etc.). but this task is just a little bit beyond what i know how to do.
|
|
|
|
|
hello everybody,
Is there any way to get the notification of changes in taskbar.
E.g:
Any new window started to display in taskbar?
Any existing window closed in taskbar?
Any windows in taskbar is flashing in taskbar?
I need to get such notifications.
Help me please!
-Cvaji
|
|
|
|
|
I personally don't know any specific way to do that, but if no such turns up you could try hooking into explorer.exe and find and subclass the tray somehow, using spy++ it seems that the taskbar is actually a toolbar, so you should be able to "capture" messages sent to it when new buttons are added or buttons are removed. Another aproach would be to install a global message hook and filter out messages targeted at the taskbar and do what you need with them (relay the events to your application or so...). I hope if nothing better appears then this can give you a starting point to do it...good luck.
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
> Sometimes you just have to hate coding to do it well. <
|
|
|
|
|
I want to capture messages (WM_PAINT) to task bar in my application.
Please provide any help.
|
|
|
|
|
Give a bit more details about what exactly you are trying to do, please.
> The problem with computers is that they do what you tell them to do and not what you want them to do. <
> Sometimes you just have to hate coding to do it well. <
|
|
|
|
|
hai thanks for the reply.
Actually I want to filter WM_PAINT message of Taskbar as you mentioned in your first reply.
When WM_PAINT message is executed in taksbar, I want to get that message in my application.
May be subclassing may help to do it. Let me check that.
-Cvaji
|
|
|
|
|
I hope someone has seen this tutorial ?
This is from the quiz at the end of the first chapter.
question 13)
The moon’s gravity is about 17 percent that of Earth’s. Write a program that displays a table that shows Earth pounds and their equivalent moon weight. Have the table run from 1 to 100 pounds. Output a newline every 25 pounds.
I think I'm close , here's what I have so far.
// This project the For Loop, the If statement, and code blocks
//to display a program that converts Metrics into Feet
#include <iostream>
using namespace std;
int main()
{
int temp;
double e; // holds the wieght on earth
double m; // holds the conversion to moon wieght
int counter;
int d;
counter = 0; // counter is initially set at 0
for(d= 1.0; e <= 100; e++) {
m = e / 17.; // convert to meters
cout << e << "earth is" << m << " moon.\n";
cin >> temp;
counter++; //encrement the counter with each loop iteration
// every tenth line, print a blank line
if ( counter == 100 ) {
cout << " \n "; // output a blank line
counter = 0; // reset the counter
}
}
cin >> temp;
return 0;
}
painterdave
aka. FlashDave
painterdave22@wildblue.net
|
|
|
|
|
painterdave wrote: for(d= 1.0; e <= 100; e++)
Probably this should be
for(e= 1.0; e <= 100; e++)
painterdave wrote: // every tenth line, print a blank line
if ( counter == 100 ) {
cout << " \n "; // output a blank line
}
Shouldn't that be:
if (counter==25)
{
cout << endl;
counter=0;
}
else
{
counter++
}
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
I am just starting on this journey, so
any help is apreciated, it's always good to get another point of view.
What makes it even more difficult is when the text that you are using , is a little bit off, or out of date or somehtings missing. I mean when you do it the way they tell you to do it , and it doesn't work ?, I thought it was me , but a friend of mine who is a programmer, had to give it a couple of fixes.
painterdave
|
|
|
|
|
painterdave wrote: I mean when you do it the way they tell you to do it , and it doesn't work ?, I thought it was me
Well, I can feel your pain. Anyway, don't worry, sooner you will laugh at your starting difficulty.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
painterdave wrote: for(d= 1.0; e <= 100; e++) {
I would always use integral values for loop counters thus:
for (counter = 1; counter <= 100; ++counter)
{
d = (double)counter;
m = d * 0.17;
cout << e << "earth is" << m << " moon.\n";
if (0 == counter % 25)
cout << endl;
}
txtspeak is the realm of 9 year old children, not developers. Christian Graus
|
|
|
|
|
painterdave wrote: for(d= 1.0; e <= 100; e++) {
e is never initialized. You should also consider making it an int . I would not worry about anything else until you have a loop that can count from 1 to 100 .
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
painterdave wrote: The moon’s gravity is about 17 percent that of Earth’s.
painterdave wrote: m = e / 17.; // convert to meters
Might help if you understood what percent means. Also, what does meters have to do with the problem what dealing in weight?
You measure democracy by the freedom it gives its dissidents, not the freedom it gives its assimilated conformists.
|
|
|
|
|
This class is used to save the pix paths in the ListBox into a file. CListItemData is a class that stores
additional info for every item in ListBox. This class operates correctly.
void CCfgFile::Serialize( const CListItemData& lid, const CListBox& lst )
{
loadConfigFile();
fPic.Seek( sizeof( CONFIGFILE_HEADER ), CFile::begin );
CString str;
int i = 0;
while( i < lst.GetCount() )
{
lst.GetText( i, str );
str = lid.GetDir(i) + _T("\\") + str + _T(".") + lid.GetType(i);
memset( rcd.strPath, 0, sizeof( rcd.strPath ) );
memset( rcd.nStyle, 0, sizeof( rcd.nStyle ) );
strcpy( rcd.strPath, str );
itoa( lid.GetStyle(i), rcd.nStyle, 10 );
rcd.nStyle[1] = '\0';
fPic.Write( &rcd, sizeof( CONFIGFILE_RECORD ) );
i++;
}
fPic.Close();
}
The prob occurs. Sometimes the file buffer is updated and the ListBox can show the updated data. But after I exit the proram, the disk file is not updated. This really confuses me. Even if I use CFile::Flush(), it's the same. Anyone could help me out? Really thanx.
|
|
|
|
|
I think there is not enough information about your problem in your post, so can you just provide some more information? Like definition of the struct type of "rcd"?
Besides, maybe you can try to debug the application to find the reason of your problem
|
|
|
|
|
What is fPic? That's a pretty crucial bit of missing data...
How is the file opened?
Could it be failing on the opening (ie, already open elsewhere) and you're not handling the errors from a failed opening?
Iain.
I have now moved to Sweden for love (awwww).
|
|
|
|
|
struct CONFIGFILE_RECORD
{
char strPath[MAX_PATH];
char nStyle[2];
};
struct CONFIGFILE_HEADER
{
char bHasPic[2];
char bOrder[2];
char nTime[5];
char bEffect[2];
char nNum[3];
char nPos[3];
};
BOOL CCfgFile::loadConfigFile()
{
BOOL ret = FALSE;
char dir[MAX_PATH];
::GetCurrentDirectory( MAX_PATH, dir );
strcat( dir, "\\config" );
UINT mode = CFile::modeCreate | CFile::modeNoTruncate | CFile::modeReadWrite | CFile::shareDenyNone;
if( fPic.m_hFile )
fPic.Close();
ret = fPic.Open( dir, mode );
if( !fPic.GetLength() )
{
strcpy( hd.bHasPic, _T("0") );
strcpy( hd.bOrder, _T("1") );
strcpy( hd.nTime, _T("9999") );
strcpy( hd.bEffect, _T("0") );
strcpy( hd.nNum, _T("0") );
strcpy( hd.nPos, _T("0") );
fPic.Write( &hd, sizeof( CONFIGFILE_HEADER ) );
}
return ret;
}
|
|
|
|