1、BCB 编辑快捷键
左/右移 块代码
选中 块代码
1 CTRL+ SHIFT+ I 是整片往右移,
2 CTRL+ SHIFT+ U 是整片文字往左移
2、得到执行程序的当前路径
ExtractFileDir(Application->ExeName);
3、循环中响应其它操作
在循环内加入Application->ProcessMessage()这一句。
4、向外部提供dll函数标准windows格式
extern "C" __declspec(dllexport) __stdcall __int32 Fun(__int32 n32_i);
5、从外部dll输入函数标准windows格式
extern "C" __declspec(dllimport) __stdcall __int32 Fun(__int32 n32_i);
6、对DLL的调试
RUN/PARAMETERS 中填上调用该DLL的 *.exe。
7、使用*.chm帮助文件
ShellExecute(NULL,NULL,帮助文件的路径,NULL,NULL,SW_SHOWNORMAL);
8、PB_C数据类型转换表
PB_C数据类型转换表 MICROSOFT PB(16Bit) PB(32Bit)
Bool Boolean Boolean
Byte, Char Char Char
Char* Ref string Ref String
Colorref Uint Ulong
Double Double Double
Dword Uint Ulong
Float N/A N/A
Handle Uint Ulong
Hdc Uint Ulong
Hfile Uint Ulong
Hinstance Uint Ulong
Hwnd Uint Ulong
Int Int Int
Long Long Long
Lparam Uint Ulong
Lpbyte Ref Int Ref Long
Lpcwstr Ref Blob Ref Blob (Unicode use ToUnicode())
Lpcvoid Ref String Ref String
Lpdword Ref Uint Ref Ulong
Lpfiletime Ref Time Ref Time
Lpint Ref Int Ref Long
Lpstr,Lpcstr Ref String Ref String
Lpvoid Ref Structstruct_inst Ref Struct struct_inst
Lpword Ref Int Ref Ulong
Mcierror Long Long
Pbyte Ref Int[#] Ref Long[#]
Short Int Int
Structure Ref Struct struct_inst Ref Struct Struct_inst
Uint Uint Uint
Void** SUBROUTINE SUBROUTINE
Word Int Long
Wparam Uint Ulong
9、使用CB内存漏洞工具
选中Progect/Option->CodeGuard
支持环境CG32.LIB/CG32.DLL
10、MFC基本运行库目录
mfc42.dll
MFC42D.DLL
MFCD42D.DLL
MFCN42D.DLL
MFCO42D.DLL
MSVCP60.DLL
MSVCP60D.DLL
MSVCRTD.DLL
NTDLL.DLL
11、数据库连接测试(ADO)
建一文件,TestDataBase.udl,内容空。
双击,按照提示操作。
12、编译器设置
Project|Options
Compiler(编译)
"Full debug"(完全调试模式)
"Code optimization"(代码优化)
"debugging"(调试)
"Debug information"(调试信息)
"Line number information"(行数信息)
"Disable inline expansions"(禁用内联扩展)
"Pascal"标签
"Optimization"优化
"debugging"(调试)
"Linker"(链接)
"Create debug information"(生成调试信息)
"Don’t generate state files"(不要生成状态文件)
"Use dynamic RTL"(使用动态RTL)
"Directories/Conditionals"(路径/条件)
"Packages"(程序包)
"Build with runtime packages"(带运行时程序包编译)
Tools|Debugger Options
Integrated debugging"(集成调试器)
Project|Build All(彻底的编译)
13、设置RTL
C builder 有几种运行时库,多线程静态链接库,单线程静态链接库 以及动态的,含有
VCL的,下面介绍多线程静态链接库,单线程静态链接库 是没有VCL的,VCL中自动 包含多线程。
Use RTL multi-threaded static library 使用多线程静态链接库
到*.bpr 中,按下面的修改即可。
<CFLAG1 value="-tWD -tWM -Od -H=$(BCB)libvcl50.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- -c"/>
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cw32mt.lib"/>
Use RTL single-threaded static library 使用单线程静态链接库
到*.bpr 中,按下面的修改即可。
<ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cw32.lib"/>
14、CODEGUARD调试器
库文件CG32.LIB/CG32.DLL
一、编译 (Project/Option-> CodeGuard)
二、运行(Tools/CodeGuard Configuration)
文件为*.CGI
日志文件中,文件名为 *.CGI。用 View/Debug Window/CodeGuard Log察看或者记事本。
相关文章
- 新发的日常小实验——使用.NET Reactor对.NET程序进行加壳保护(反编译、加壳、混淆)
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
- BCB日常使用小集锦
- BCB日常使用小集锦
- BCB日常使用小集锦
- docker日常使用的实用小技巧总结(推荐)
- eclipse使用小技巧集锦
- 日常总结之小狐狸项目1——chosen使用, bootstrapTable, 及其他好用的包,插件
- Shell日常使用的小技巧
- win7+win10系统使用日常经验集锦