online stats

【程式語言】User環境執行BCB程式缺少Library的問題

0 意見

一般來說,在User環境執行BCB程式時,可能會碰到
缺少Library的狀況。
處理方式有兩種…


A. 從開發環境,將缺少的Library補足,可能缺少的元件有:
vcl60.bpl
rtl60.bpl
borlndmm.dll
stlpmt45.dll
CC3260MT.DLL
或直接安裝Borland C++ 6 Runtime Library

B. 在Compiler時注意下列設定…




read more...

【程式語言】Data segment share in a DLL

0 意見

【C++】
依MS網站上的說明,利用#pragma data_seg將需要共用的Variant包在裡面後,
這些變數在DLL Load時會被配置在相同的記憶體,若已配置,則不會再重新配置,
所以不同的程式在使用此Variant時,均是處理同一塊記憶體,藉此達到Variant共用的效果。
需注意的是,這些共用的Variant在宣告時,需給予初始值才能生效;同時不建議
以此方式共享指標或陣列,這可能造成程式中斷。


#pragma data_seg("Shared")
int iSharedVar = 0;
#pragma data_seg()
#pragma comment(linker, "/SECTION:Shared,RWS")

參考資料:
How to specify both shared data and non-shared data in a DLL in Visual C++
範例:
How to share a data segment in a DLL

read more...

【DIY】移除Windows XP內鍵之Windows Messenger

0 意見

Windows XP 內建安裝了 Windows Messenger 4.7 版,對於習慣使用新版 MSN Messenger 的人來說實在很煩人,而且無法在「新增/移除程式」中解除安裝。

最快又完整解決安裝的方法就是從:
「開始」->「執行」-> 在空格內輸入以下指令:
RunDll32 advpack.dll,LaunchINFSection %windir%\INF\msmsgs.inf,BLC.Remove
輸入完成後按確定,等出現成功訊息之後,就完成解除安裝了。

read more...