【问题标题】:How to write my own code in NetSim?如何在 NetSim 中编写我自己的代码?
【发布时间】:2014-08-01 12:18:54
【问题描述】:

我想在 www.tetcos.com 的 NetSim 中编写我自己的自定义仿真代码。 我是 NetSim 的新手,谁能解释我如何创建新项目?或者我如何 printf 到 NetSim 控制台?像一个基本的 hello world 类型的项目?

【问题讨论】:

    标签: c networking simulation simulator


    【解决方案1】:

    以下是关于如何开始自定义代码的三个简单步骤:

    第 1 步:设置您的项目:设置您的编译器,以便您的项目代码在 win 中编译为动态链接库 (DLL)(或在 Linux 中编译为动态共享库 (.so))。

    步骤 2:复制源代码:NetSim 的安装目录包含文件夹 $(NETSIM_INSTALL_DIR)/NetSim/Simulation/src 中所有协议的源代码。复制粘贴以下文件:
    一种。路径 $(NETSIM_INSTALL_DIR)/src/simulation/include 中与 TCP 相关的头文件
    湾。路径 $(NETSIM_INSTALL_DIR)/src/simulation/lib 中与 TCP 相关的 Lib 文件
    C。路径$(NETSIM_INSTALL_DIR)/src/Simulation/tcp中与TCP相关的源文件

    步骤 3:修改代码并替换二进制文件:打开 TCP.c 并在 TCP init 函数之后编写 Hello World 打印语句。然后构建您的代码并用您的 libTCP.dll(或 libTCP.so)替换 $(NETSIM_INSTALL_DIR)/NetSim/Simulation/bin) 中现有的 NetSim 二进制文件(libTCP.dll 或 libTCP.so(对于 linux)。

    接下来,运行一个您会在命令行中看到“Hello World”的模拟。

    【讨论】:

    • 感谢您的回复。我按照你提到的步骤构建了 dll 文件。然后我将其替换为 ..NetSim Standard/bin 文件夹并运行。模拟运行良好,但我没有在控制台中看到“Hello World”。我确定这是我的 dll,因为我删除了原始 dll 并将其放在其他位置。所以我知道它正在运行我的代码,但我无法使用 printf 看到 hello world。请帮忙。
    • @user3701620 在 NetSim 中,printf 已被重定向到写入文件(%temp% 文件夹)而不是标准输出,但如果您想在控制台/终端上查看输出,您可以使用 fprintf 函数并更改您的输出流到 stderr(在 fprintf 中将 stderr 用于 FILE* 参数)
    • 只是想告诉大家,从 NetSim v11.1 开始,随着工作空间的引入,这种情况发生了变化。无需更换DLL等,只需打开代码,构建并运行
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-23
    相关资源
    最近更新 更多