什么是bin文件?「建议收藏」

什么是bin文件?「建议收藏」出现这样的问题:未能加载文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件。原因可能是:1.路径不正确;2.文件不存在。相信大家都遇到这样的问题了,我和大家一样按照常规的方法:把DAL的路径改到E:\4.平时记录\UI\机房重构\UI\bin\Debug下面了,一般这样就可以解决了。但是,我的没有解决。bin\Debug下面仍让没有有关DAL的dll文件。不

大家好,又见面了,我是你们的朋友全栈君。

        知道多问bin文件几个为什么,是在出现以下这个问题时引发的。

        出现这样的问题:未能加载文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件。
        原因可能是:1.路径不正确;2.文件不存在。

什么是bin文件?「建议收藏」

        相信大家都遇到这样的问题了,我和大家一样按照常规的方法:把DAL的路径改到E:\4.平时记录\UI\机房重构\UI\bin\Debug下面了,一般这样就可以解决了。

什么是bin文件?「建议收藏」

        但是,我的没有解决。bin\Debug下面仍让没有有关DAL的dll文件。不知道为什么了,明明已经把路径改在那个下面了啊?如下图:

什么是bin文件?「建议收藏」

        没有办法,就手动复制到bin下面了,初步解决了这个问题。

那么,另一个问题又来了,为什么不管是Facade、BLL、Factory、IDAL、Entity都有,却唯独没有DAL的dll文件呢?

        这个就和我们的七层有关系了,因为七层中U层引用Facade层引用BLL引用Factory、IDAL,都引用Entity,但是,没有那一层引用DAL,DAL层被独立了,没有在那一条线中,它是来实现IDAL接口层的。所以,U层的bin下面没有DAL层的dll文件。但是,我们的程序启动项是U层,我们的D层要想运行,需要把DAL的动态链接库,放在U层下面。

参考博客:李社河:未能加载文件或程序集“DAL”或它的某一个依赖项。系统找不到指定的文件。

那么,为什么这样可以解决呢?

为什么要把dll文件放在U层的bin下面呢?

        程序把U层设为了启动项,而执行U层就是执行U层下面的bin文件。

那什么是bin文件呢?为什么这么关键?

         bin (binary)既是:二进制, 里面存放的一般是可执行的二进制文件。二进制即是机器代码,汇编语言编译后的结果。我们编译的是高级语言,把高级语言翻译为机器语言后,才能被计算机执行。
以下是机器语言:看到这个,对比一下,感觉咱们学习的高级语言简单多了。^_^

什么是bin文件?「建议收藏」什么是bin文件?「建议收藏」

这些二进制文件都在bin\Debug中,我们知道了什么是bin,那么Debug呢?
        世界最早的一批程序设计师之一,葛丽丝·霍波,有一天,她在调试设备时出现故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波诙谐的把程序故障统称为“臭虫(BUG)”,把排除程序故障叫DEBUG,而这奇怪的“称呼”,竟成为后来计算机领域的专业行话。如DOS系统中的调试程序,程序名称就叫DEBUG。


        总结:机房重构不仅仅是完成一个可以运行的项目就可以了,更重要的是,进行中遇到问题,一定要耐心解决,这可以说更加有意义。自己遇到问题时,有逃避的心里,想着问其他人可以很快得到答案,却这样轻易的剥夺了自己成长的机会。在自己耐心的摸索一些东西后,发现挺有意义的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/124994.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月19日 下午7:20
下一篇 2022年4月19日 下午7:40


相关推荐

  • python替换文件的某个字符串_用Python替换文件中的字符串

    python替换文件的某个字符串_用Python替换文件中的字符串将所有这些代码放入一个名为mass_replace的文件中.在Linux或MacOSX下,您可以执行chmodxmass_replace,然后运行此操作.在Windows下,您可以使用pythonmass_replace后跟相应的参数来运行它.#!/usr/bin/pythonimportosimportreimportsys#listofextensionstorepl…

    2022年5月23日
    157
  • Java——数组的定义与使用「建议收藏」

    Java——数组的定义与使用「建议收藏」目录1.数组2.数组初始化2.1动态初始化(声明并开辟数组)2.2引用传递的内存分析2.3静态初始化(开辟同时赋值)3.二维数组4.数组与方法互操作5.Java对数组的支持5.1排序:5.2拷贝6.对象数组6.1动态初始化1.数组一组相关类型的变量集合缺点:长度固定,存在越界问题2.数组初始化 2.1动态初始化…

    2022年5月22日
    45
  • 【Javaweb】TCP原理(三次握手四次挥手)

    【Javaweb】TCP原理(三次握手四次挥手)目录一 TCP 协议二 TCP 原理 1 确认应答机制 2 超时重传机制 3 连接管理机制 4 滑动窗口 5 流量控制 6 拥塞控制 7 延迟应答 8 捎带应答 9 粘包问题一 TCP 协议 TCP 即 Transmission 传输控制协议 人如其名 要对数据的传输进行一个详细的控制 TCP 协议段格式源 目的端口号 表示数据是从哪个进程来 到哪个进程去 序列号 在建立连接时由计算机生成的随机数作为其初始值 通过

    2026年3月17日
    2
  • Android View 深度分析requestLayout、invalidate与postInvalidate「建议收藏」

    Android View 深度分析requestLayout、invalidate与postInvalidate「建议收藏」前言前几篇文章中,笔者对View的三大工作流程进行了详细分析,而这篇文章则详细讲述与三大工作流程密切相关的两个方法,分别是requestLayout和invalidate,如果对Viwe的三个工作流程不熟悉的读者,可以先看看前几篇文章,以便能更容易理解这篇文章的内容。

    2022年6月2日
    40
  • linux下连接mysql数据库命令,linux连接mysql命令[通俗易懂]

    linux下连接mysql数据库命令,linux连接mysql命令[通俗易懂]linux连接mysql是最基本的操作之一,对于初学者来说我们可以通过命令来连接mysql,下面由学习啦小编为大家整理了linux下连接mysql命令的相关知识,希望对大家有所帮助!linux连接MYSQL命令格式:mysql-h主机地址-u用户名-p用户密码linux连接mysql命令实例1、连接到本机上的MYSQL找到mysql的安装目录,一般可以直接键入命令mysql-uroot…

    2025年11月29日
    7
  • not apng file怎么解决_function

    not apng file怎么解决_functionpadStartisnotafunction问题描述微信小程序开发时,控制台padStartisnotafunction;解决方案不用这个方法了呗,或者自己重新在String.prototype.padStart中自己实现,毕竟是es6之后的方法,经测试,微信6.6.6版本不支持,6.6.10版本支持,和版本也有一定的关系,期望以后的支持性…

    2025年10月13日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号