Tuesday, September 23, 2008
How to know which programs are using a DLL in Windows?
How to know which DLLs are being used by a program in Windows?
tasklist /m /fi "IMAGENAME eq [filename.exe]"
Replace the [filename.exe] above with the executable file name for which you need information.
For example: With Notepad.exe
Command:
tasklist /m /fi "IMAGENAME eq notepad.exe"
Sample Output:
Image Name PID Modules
========================= ====== =============================================
NOTEPAD.EXE 3340 ntdll.dll, kernel32.dll, comdlg32.dll,
ADVAPI32.dll, RPCRT4.dll, Secur32.dll,
COMCTL32.dll, msvcrt.dll, GDI32.dll,
USER32.dll, SHLWAPI.dll, SHELL32.dll,
WINSPOOL.DRV, ShimEng.dll, AcGenral.DLL,
WINMM.dll, ole32.dll, OLEAUT32.dll,
MSACM32.dll, VERSION.dll, USERENV.dll,
UxTheme.dll, IMM32.DLL, LPK.DLL, USP10.dll,
MSCTF.dll, msctfime.ime, autoaway.dll
Update: 2023-07-20
Wednesday, September 10, 2008
Large Hadron Collider Activated
The Large Hadron Collider (LHC) was activated for the first time today on 10 September 2008. The LHC is the world's largest and most powerful subatomic particle accelerator.
Tuesday, September 2, 2008
Google Chrome (Beta) Released
Thursday, July 24, 2008
CStatic control loses transparency in Visual C++
Problem
Solution
When customizing the background color of a CDialog, you might notice that certain controls—especially CStatic text labels—continue to display their default background color, typically COLOR_BTNFACE. This mismatch can disrupt the visual consistency of your dialog, especially if you're aiming for a custom theme or aesthetic.
To resolve this, you can make the background of these controls transparent so they inherit the dialog’s background color. This is particularly useful for static text controls that should blend seamlessly with the rest of the interface.
In a subclassed dialog (e.g., CMyDialog derived from CDialog), you can override the OnCtlColor() message handler to apply transparency to all CStatic controls. Here’s how you can implement it:
When you customize your dialog background to white, the OnCtlColor() implementation I shared earlier works perfectly for CStatic controls. They correctly inherit the dialog’s background and appear transparent.
However, things behave differently with a CSliderCtrl. Using the same approach, you’ll notice that the slider’s background turns completely black instead of blending with the dialog’s white background. This happens because returning a NULL_BRUSH in OnCtlColor() doesn’t interact well with certain controls like sliders, which then default to a solid black fill.
A simple workaround is to return a handle to a white brush rather than a NULL_BRUSH. This ensures that the slider control background matches the dialog’s white background consistently. The following snippet demonstrates the fix, assuming CMyDialog is derived from CDialog and the dialog background has already been painted white by overriding CDialog::OnEraseBkgnd():
This adjustment ensures that both CStatic and CSliderCtrl controls render correctly against a white dialog background, maintaining a consistent and clean appearance across your UI. Refer this.




