标签: probing

是否可以设置没有app.config的汇编探测路径?

我需要在子文件夹中为我的应用程序放置DLL.可以通过app.config设置此子文件夹:

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <probing privatePath="Libs"/>
    </assemblyBinding>
  </runtime>
Run Code Online (Sandbox Code Playgroud)

但由于某些原因,我不想在这种情况下使用.config文件.是否可以直接从应用程序代码设置探测路径?我确信DLL总是在这个文件夹中.

有任何想法吗?

.net probing

12
推荐指数
2
解决办法
6935
查看次数

C#设置探测privatePath而不用app.config?

我有一个C#应用程序,为了组织它的文件,我在一个名为"Data"的文件夹中有一些DLL.我希望EXE检查此文件夹中的DLL,就像它检查当前目录一样.如果我使用以下信息创建了App.Config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <probing privatePath="Data" />
    </assemblyBinding>
  </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

它没有问题.我不想要App.Config.有没有办法在不使用app.config的情况下设置探测路径?

c# app-config private path probing

12
推荐指数
2
解决办法
1万
查看次数

FileLoadException在InitializeComponent或x:Class =

我在InitializeComponent-method 获得了文件加载器异常(第一次机会),或者调试器在x:Class多个WPF用户控件的xaml-root属性处断开.尽管异常减慢了导航的速度,但一切都运行良好.

这是异常消息:

无法加载文件或程序集'Company.Solution.UserInterface,Version = 0.1.5568.25577,Culture = neutral,PublicKeyToken = 45069ab0c15881ce'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)

这是Fusion日志:

Assembly manager loaded from:  C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable  D:\Development\Product\Main\src\Company.Product \bin\Debug\Product.vshost.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: DisplayName = Company.Product .UserInterface, Version=0.1.5568.25577, Culture=neutral, PublicKeyToken=45069ab0c15881ce
(Fully-specified)
LOG: Appbase = file:///D:/Development/Product/Main/src/Company.Product/bin/Debug/
LOG: Initial PrivatePath = NULL
Calling assembly : PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35.     
LOG: This bind starts in default load context.
LOG: Using application configuration file: D:\Development\Product \Main\src\Company.Product \bin\Debug\Product .vshost.exe.Config
LOG: Using …
Run Code Online (Sandbox Code Playgroud)

c# wpf assemblybinding probing

12
推荐指数
1
解决办法
466
查看次数

有人用apache2探测我的aws ec2实例的目标是什么?

access.log我发现奇怪的访问模式.这种探测的目的是什么?

219.106.219.16 - - [11/Mar/2016:15:00:14 +0200] "HEAD my.aws.ec2.instance:80/1phpmyadmin/ HTTP/1.1" 404 195 "-" "Mozilla/5.0 Jorgee"
219.106.219.16 - - [11/Mar/2016:15:00:14 +0200] "HEAD my.aws.ec2.instance:80/2phpmyadmin/ HTTP/1.1" 404 194 "-" "Mozilla/5.0 Jorgee"
219.106.219.16 - - [11/Mar/2016:15:00:14 +0200] "HEAD my.aws.ec2.instance:80/3phpmyadmin/ HTTP/1.1" 404 194 "-" "Mozilla/5.0 Jorgee"
219.106.219.16 - - [11/Mar/2016:15:00:15 +0200] "HEAD my.aws.ec2.instance:80/4phpmyadmin/ HTTP/1.1" 404 194 "-" "Mozilla/5.0 Jorgee"
219.106.219.16 - - [11/Mar/2016:15:00:15 +0200] "HEAD my.aws.ec2.instance:80/MyAdmin/ HTTP/1.1" 404 194 "-" "Mozilla/5.0 Jorgee"
219.106.219.16 - - [11/Mar/2016:15:00:15 +0200] "HEAD my.aws.ec2.instance:80/PMA/ HTTP/1.1" 404 194 "-" "Mozilla/5.0 …
Run Code Online (Sandbox Code Playgroud)

bots probing

9
推荐指数
2
解决办法
4000
查看次数

MsBuild没有查找自定义任务的第二级依赖项的良好目录

我写了一个MsBuild任务:MyTask.在我的解决方案中,我有Task项目和其他项目.MyTask引用了一个引用第三个程序集的项目(比如ProjA),比如说(dep1和dep2).

这些项目都构建良好,我将输出放在一个目录(Compil)中.在这个目录中我有我想要的所有dll:MyTask.dll,ProjA.dll,dep1.dll,dep2.dll等.

在我的MsBuild文件中,我包含自定义任务程序集:

<UsingTask AssemblyFile="..\Compil\MyTask.dll" TaskName="CreateSitesCss" />
Run Code Online (Sandbox Code Playgroud)

然后我调用MyTask程序集的任务.该调用执行得很好但是MsBuild抱怨没有找到dep1和dep2程序集(尽管它们位于同一目录中):

错误:无法加载文件或程序集'dep1,Version = 2.0.0.0,Culture = neutral,PublicKey Token = 9109c11469ae1bc7'或其依赖项之一.该系统找不到指定的文件.

我可以通过将dep1.dll和dep2.dll复制到c:\ windows\microsoft .net\framework\v4.0 \来解决这个问题,但我不想这样做,因为它在构建其他项目时会触发问题(赢了' t将dep1.dll和dep2.dll复制到输出目录...).

有没有人有同样的问题,或更好的解决方案?


编辑

这是Fusion Log Viewer的输出

*** Assembly Binder Log Entry  (19/10/2010 @ 17:52:45) ***

The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.

Assembly manager loaded from:  C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable  c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: User = HEADOFFICE\bbaumann
LOG: DisplayName = ProjA
 (Partial)
WRN: …
Run Code Online (Sandbox Code Playgroud)

msbuild dependencies msbuild-task assembly-resolution probing

6
推荐指数
1
解决办法
1564
查看次数

在app.config中使用<codebase>元素

我打算在我的.NET 3.5 Windows应用程序的bin文件夹以外的文件夹中保留几个dll.我不确定如何使用codebase元素或探测元素来指定正确的路径.这就是我现在在app.config文件中所拥有的,

<runtime>
 <assemblyBinding>
  <dependentAssembly>
    <assemblyIdentity name="CommonLib" publicKeyToken="f0b5026b59d5645e"   
     culture="neutral" />
    <codeBase version="1.0.0.0" href="SharedFolder\CommonLib.dll" />
  </dependentAssembly>
 </assemblyBinding>
</runtime>
Run Code Online (Sandbox Code Playgroud)

我明白了,无法在运行时加载程序集错误.看来我在配置文件中做错了.SharedFolder是添加到项目的文件夹.

.net codebase probing

5
推荐指数
1
解决办法
4962
查看次数

二次探测哈希表的限制

我正在做一个程序来比较线性探测,二次探测和哈希表中单独链接所需的平均和最大访问.

我已经为3个案例完成了元素插入部分.在从哈希表中找到元素时,我需要限制结束搜索.在单独链接的情况下,我可以在下一个指针为空时停止.对于线性探测,我可以在探测整个表时停止(即表的大小).在二次探测中我应该使用什么作为限制?表大小会吗?

我的二次探测函数是这样的

newKey = (key + i*i) % size;
Run Code Online (Sandbox Code Playgroud)

其中我从0变为无穷大.请帮我..

algorithm hashtable quadratic probing data-structures

4
推荐指数
1
解决办法
3140
查看次数

哈希表中的链接和探测有什么区别?

他们是如何工作的?他们的主要区别是什么?他们各自的权衡取舍是什么?他们的类型是什么(如果有的话)?什么时候比另一个更好(如果有的话)?

PS:我已经浏览过Anagrams - 使用链接进行散列并使用C语言进行探测,为什么在与列表链接的单独链接时,我们在哈希表中使用线性探测?,但似乎都没有在两种方法之间形成对比.

hashtable probing data-structures

3
推荐指数
1
解决办法
8524
查看次数

线性探测的二次探测

对于给定的哈希值,线性探测生成的索引如下:

h,h+1,h+2,h+3,等.

对于给定的哈希值,二次探测生成的索引如下:

h,h+1,h+4,h+9,等.

在线性的情况下将形成簇,但在二次的情况下不会形成簇.

但是,当两个进程(方法)需要采用相同数量的步骤进行插入或搜索时,二次方法如何比线性方法更有效.谢谢!

hashtable probing quadratic-probing data-structures linear-probing

2
推荐指数
2
解决办法
1万
查看次数

从哈希表中删除值的成本是多少?

现在我有一个问题,当我在插入过程中使用线性探测时,我被问到从哈希表中删除值的成本.

我可以通过阅读互联网上的各种内容来弄清楚它必须对负载因素做些什么.虽然我不确定,但是我读了加载因子和所需探针之间的关系,它是探针No = 1 /(1-LF).

所以我认为成本必须取决于探针序列.但是,另一个想法毁了一切.

如果元素插入p探针中,现在我试图删除此元素,该怎么办?但在此之前,我已经删除了几个具有相同哈希码的元素,并且是少于p的探针插入的一部分.

在这种情况下,我到达一个阶段,我在哈希表中看到一个空的空格但我不确定我试图删除的元素是否已经被删除或者是因为探测而在某个其他位置.

我还发现,一旦我删除了一个元素,我必须用一些特殊的指示符来标记这个插槽,以告知它是可用的,但这并不能解决我不确定我愿意删除的元素的问题.

有人可以建议如何在这种情况下找到费用吗?如果是非线性探测,方法是否会发生变化?

hashtable probing

1
推荐指数
1
解决办法
439
查看次数

Post Build事件,使用探测将所有额外的.dll放在bin目录中

我的项目中有一堆其他dll的WPF程序集

我想将除主程序集和app.config之外的所有内容从构建目录移动到名为bin的子目录

当我将探测标记添加到我的app.config并手动执行时(剪切和粘贴作业),这很容易

<configuration>
  <connectionStrings>
    <add name="ConnectionString" connectionString="..." />    
  </connectionStrings>

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <probing privatePath="bin"/>
    </assemblyBinding>
  </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我现在要做的是在构建结束时自动将不是程序集的所有内容移动到bin目录中.

所以从这里

App.exe
App.config
Domain.dll
Application.dll
Framework.dll
Run Code Online (Sandbox Code Playgroud)

对此

App.exe
App.config
bin\Domain.dll
bin\Application.dll
bin\Framework.dll
Run Code Online (Sandbox Code Playgroud)

我猜我可以使用带有一堆移动命令的蝙蝠文件,但我希望有一些比那里有更多可重用和智能的东西.

visual-studio-2010 post-build-event probing

0
推荐指数
1
解决办法
2470
查看次数

使用“探测”从不同目录加载 dll

编译具有外部引用的 C# 项目时,引用的 dll 将被复制到项目的输出路径(exe 旁边)。

运行应用程序时,它期望找到 exe 旁边的 dll。

我正在寻找一种方法将我的 dll 文件分散到不同的目录(对于初学者来说是 Dlls)。并让 exe 在这些目录中查找 dll 文件。

例子:

假设我们有一个名为“App”的应用程序位于 下C:\App\App.exe,并且它使用了一个名为“App.dll”的 dll 文件,该文件当前也位于 下C:\App

我希望创建一个名为的新目录C:\App\Dlls并将 App.dll 文件移动到那里,同时确保 App.exe 文件知道在新位置查找 dll。

我在网上搜索并找到了探测解决方案。这是我的代码(编辑后的“App.config”文件):

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1" />
    </startup>
  <runtime>
    <assemblyBinding xmlns="urn:schemas=microsoft-com:asm.v1">
      <probing privatePath="Dlls" />
    </assemblyBinding>
  </runtime>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我编译了我的应用程序,创建了 Dlls 目录并将所有 dll 文件移至该目录,但应用程序崩溃了。

我缺少什么?

c# loadlibrary dynamic-linking assemblybinding probing

0
推荐指数
1
解决办法
4686
查看次数