好的,所以我有2个游戏项目。一个是服务器,一个是客户端。我将共享单元保存到我用于包含在客户端/服务器项目中的共享文件夹中。但是有一个问题:我有一个共享文件,需要客户端/服务器的不同文件。示例:mySharedLib需要打印到控制台,但客户机/服务器控制台不同。我有什么选择?谢谢包含共享文件的客户端文件
0
A
回答
4
在你共享的文件,你可以使用define编译器指令
例如
{$IFDEF MYSERVER}
Writeln('Server'); // this code executes
{$ELSE}
Writeln('Client'); // this code does not execute
{$ENDIF}
然后在你的服务器项目定义MYSERVER定义,并在客户端定义MYCLIENT一个,然后当共享代码单独使用一个{$ IFDEF)语句。
从Delphi help on conditional definitions:
的条件指令$ IFDEF,$ IFNDEF,$ IF,$ ELSEIF,$ ELSE,$ ENDIF和$ IFEND允许您根据的状态编译或抑制码条件符号。 $ IF和$ ELSEIF允许您基于声明的Delphi标识符进行条件编译。 $ IFOPT根据是否启用指定的编译器开关来编译或取消代码。
但是,如果共享代码位于DLL或任何其他类型的编译共享资源(如程序包)中,则不会生效。
从Delphi help on conditional definitions:
条件定义时,源代码重新编译仅评价。如果更改条件符号的状态然后重新生成项目,则可能不会重新编译未更改单元中的源代码。使用Project | Build All Projects确保项目中的所有内容都反映了条件符号的当前状态。
1
如果他们不同,他们不再是一个真正的共享文件。
相关问题
- 1. 云端点API客户端库不包含JAR文件
- 2. EJBObject在客户端共享?
- 3. .NET 4.0完全包含客户端配置文件?
- 4. 客户端文件夹
- 5. 在WinSCP脚本文件中包含共享文件夹的凭据
- 6. VirtualBox限制.js文件的大小,可以包含在共享文件夹中?
- 7. 如何与客户端共享最终的.ipa文件上传到iTunes连接?
- 8. 为什么很难与我的Silverlight客户端共享资源文件(resx)?
- 9. 使用Office 365客户端库访问OneDrive for Business中的共享文件
- 10. 访问共享从客观的C文件快捷文件
- 11. qt包含外部头文件的共享库
- 12. 如何共享包含文件句柄的对象?
- 13. 不能包含来自共享项目的文件
- 14. 用户之间的Django文件共享
- 15. Android共享文件
- 16. 从共享文件
- 17. Android共享文件
- 18. AWK - 文件共享
- 19. drupal文件共享
- 20. TCP文件共享
- 21. 共享大文件
- 22. 共享文件锁
- 23. xmpp文件共享
- 24. 共享文件Fileprovider
- 25. Rails Drive Rest Api |使用谷歌api客户端共享文件gem
- 26. 共享Excel文件包括ADODB连接
- 27. Java的热点(TM)客户端共享VS不共享
- 28. 如何在maven项目中包含共享对象文件
- 29. 共享主机 - 如何在web根目录下包含文件?
- 30. udp客户端接收文本文件