0

我遇到了一个奇怪的问题,希望得到您的帮助。

在我的移动应用程序中,该程序在 SD 卡上编写了一个 Windows C# 程序(和依赖项),以便当 SD 卡安装在 PC 上时,用户可以在他的 PC 上运行它。程序和依赖项像这样在根级别复制。

  • 我的程序
  • myprogram.exe.config [仅供参考:config 具有运行时绑定和 Libs 文件夹]

  • 库\Interop.iTunesLib.dll

我收到了这样一个用户的错误报告。我无法在我的最后重现这个

OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1
Assembly version: 1.0.0.0
CurrentDirectory: C:\Users\yasd\AppData\Local\Temp\WPDNSE\SID-{10001,SECZ9519043CHOHB,4820242432}
Problem: Could not load file or assembly 'Interop.iTunesLib, Version=1.11.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

现在我看到的问题是我在报告中得到的程序的当前目录是

"C:\Users\yasd\AppData\Local\Temp\WPDNSE\SID-{10001,SECZ9519043CHOHB,4820242432}" 

我期待它是这样的

F:\

因为用户是从 SD 卡的根目录运行它,而不是在 windows 的临时文件夹上运行它。

我的评估是,因为这条路径是错误的,它无法加载依赖程序集,

如果从 SD 卡运行,为什么会有东西进入 C# 中的临时目录???我问用户他没有从 SD 卡复制任何文件并从 SD 卡运行。

请帮助,任何建议高度赞赏。

4

2 回答 2

0

我怀疑这与遮蔽有关,这样做是为了防止文件锁导致各种问题。

于 2012-05-17T23:11:32.457 回答
0

我已经解决了。用户没有从 SD 卡运行它,而是使用 MTP 的称为便携式设备部分的东西

于 2012-07-01T03:45:48.453 回答