|
You're welcome
Aleon666 wrote:
Today is valentine's day for our chinese people
Will you send some presents to your lover if he/she is in China
Nope, she's in Australia
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Hello all,
I just built a small program to log SMB connects. Using NetFileEnum I can pretty much log which user opens which directories and which files. But now I want to link this information to the host PC of the user. I can get all the users with their PCs using NetSessionEnum, but I can't link both.
Situation;
I have a public account on a big network, called LAN. Now with the thing I built I can see which files and dirs are opened by user LAN, yet I can't see from which PC it comes. And user LAN can be logged in from loads of PCs at the same time. I can use NetSessionEnum to get the PCs, but then I can't link it to the files they opened.
Does anyone have any idea how I can get this information full?
Thanks,
- Fahr
|
|
|
|
|
have class?where?
thanks!
|
|
|
|
|
http://www.fmod.org
Free for non-commercial use...
Kochise
In Cod we trust !
|
|
|
|
|
|
Hi, I would like to disable displaying "..." suffix when text in ListView column header is longer that header's current width. For example Total Commander does it. Is there any way?
Thanks in advance.
|
|
|
|
|
You can't, it's hard-coded, it all depends on the wish of the coder who added to "..." or not...
Kochise
PS : Total Commander is great, I use it anywhere, home, office, ...
In Cod we trust !
|
|
|
|
|
I want a modal dialog box to perform some automatic tasks after it is shown on the screen. In that tasks there can also appear a messagebox, so if I use the Windows Message OnSetFocus(), the messagebox will keep coming up, because every time the user clicks OK on the message box, the dialog gets his focus. Is there a way to achieve this?
Thnxx
|
|
|
|
|
harmendejong wrote:
I want a modal dialog box to perform some automatic tasks after it is shown on the screen.
Near the end of OnInitDialog() , just post a message to the dialog.
|
|
|
|
|
At the end of your OnInitDialog function, post a custom message to your dialog using PostMessage. The code in your handler will be executed after your dialog is displayed.
#define WMU_MYCUSTOMMESSAGE WM_APP + 1
...
ON_MESSAGE(WMU_MYCUSTOMMESSAGE, OnMyCustomMessage)
...
BOOL CMyDialog::OnInitDialog()
{
...
PostMessage (WMU_MYCUSTOMMESSAGE, 0, 0);
return FALSE;
}
...
void CMyDialog::OnMyCustomMessage(LPARAM, WPARAM)
{
}
Sonork 100.11743 Chicken Little
"You're obviously a superstar." - Christian Graus about me - 12 Feb '03
Within you lies the power for good - Use it!
|
|
|
|
|
Hi, guys:
First time for me posting here, forgive my rudeness or other unwelcomed.
I'm repairing a software with several dll's. My duty is to cut down any dll and import anything in them into main source code.
Are there any articles on this topic or some advice ?
TIA
-gusd
|
|
|
|
|
I've done this several times and the most effective way has been to convert the DLLs into libraries.
First, get a list of all the files in the project (it's not unusual to have some files in the directory which aren't actually in the project.)
Second, remove the DllInit function. Usually you don't need to replace it with anything since it doesn't do anything. If it does, you can often create a small private class and instantiate it globally. If that won't work, simply add Init() and DeInit() functions then call them from the main program in the proper manner and sequence.
DO NOT get fancy at this point. It's a huge temptation, but one you must resist.
Third, fix up the headers. You don't need the "dllimport"/"dllexport", etc stuff. (Nor do you need the .def file.) Add #pragma comment(lib, "put library name here.lib") to the header.
Fourth. Ensure the libraries are subprojects of the master project. Add the subprojects to the master. Set the dependencies and paths and you're off!
Fifth, oh, and go through the main project to ensure you aren't "manually" loading the DLLs or accessing them through a pointer or other such strangeness.
|
|
|
|
|
Hi all
I create internal control in my ATL project and i want
call it IpersistStreamInitImpl::Load(LPSTREAM pStream) method immediatly but how i can recognize what pStream used this control????
Thanks
|
|
|
|
|
I'm trying to serialize a class that I've derived from CArray. It's just an array of CString objects:
class CFormList : public CArray<CString, CString&> {
DECLARE_SERIAL(CFormList);
...
}
Then I include the IMPLEMENT_SERIAL macro:
IMPLEMENT_SERIAL(CFormList, CArray, 1);
When I compile I'm getting this error:
error C2955: 'CArray' : use of class template requires template argument list
I've also tried changing the IMPLEMENT_SERIAL line to this:
IMPLEMENT_SERIAL( CFormList, CArray<CString, CString&> );
But that give me this compile error:
warning C4002: too many actual parameters for macro 'IMPLEMENT_SERIAL'
error C2039: 'classCArray' : is not a member of 'CString'
I'm totally at a loss for why I'm getting these errors . Has anyone else seen this?
Thanks,
Mike Ellertson
|
|
|
|
|
It's a limitation of the macro expansion capability of the preprocessor. The preprocessor splits the parameters where it sees commas. It does not parse its parameters at all. Basically, what it means is that the only way you can do this is to get the MFC source definitions for IMPLEMENT_SERIAL() and code it directly, rather than using the macro.
It's a pain in the neck, but the only way, I'm afraid.
Hope this helps,
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
That did help, thanks a log. I went ahead and derived from CStringList and that took care of my preprocessor problem.
Mike Ellertson
|
|
|
|
|
I cured the problem and I have no idea why. Perhaps it has to do with datatype and casting? Here's what I did:
void GraphicsWindowsForm::PaintHandler(Object* sender, PaintEventArgs* e)
{
...
...
System::Drawing::Rectangle rcRect = get_ClientRectangle();
rcRect.Inflate(-10,-10);
//Make sure an integer is an integer (yeah, it doesn't make sense but it worked for some reason)
int nWidth=rcRect.Width;
int nHeight=rcRect.Height;
System::Drawing::Graphics * Gr = e->get_Graphics();
System::Drawing::Bitmap* bmp = new System::Drawing::Bitmap(nWidth,nHeight,Gr); //contructor stop bitching about delegates after changing rcRect.Width to nWidth..>!???!#$_)*()#4
... more code ...
...
}
norm
|
|
|
|
|
Shouldn't you be in the Managed C++ forum instead of the VC++ one???
|
|
|
|
|
I can screen capture a window surface. But not a video surface being played on Media Player. I get only the frame of the Media Player and a "black" surface where the current video frame should be.
This "black" surface is seeming like a "transparent" layer (I am guessing here) upon which the video frames are rendered. I am guessing it is the DirectShow surface.
How can I capture the video frame?
|
|
|
|
|
Some of these may help
1. Right click on your desktop into Display Properies, Settings, Advanced disable video overlay on your video card.
2. Run Dxdiag.exe go to the display page and disable Direct Draw hardware acceleration
|
|
|
|
|
Isn't there another way without changing to software emulation?
|
|
|
|
|
Nope, no ways
Try also to make sure the bitmap displayed have the same format than the screen (if you grab a 16-bits/peixel picture and try to display it on a 32-bits/pixel screen, you'll get a blank/black screen).
If it is a code you own and thus you can modify, you should convert the grabbed picture to the screen format before display...
Kochise
In Cod we trust !
|
|
|
|
|
|
is there anyway to set the hardware acceleration in c++?
|
|
|
|
|
How to capture the file name while doing saving process of a file
|
|
|
|