问题列表 - 第32021页

有没有理由为什么DLL重定向除了清单的存在之外不起作用?

我们有一个遗留的VB6应用程序,它使用Crystal Reports XI生成打印报告.我们通过经验发现,如果Crystal Reports打印引擎选择了错误版本的usp10.dll(Windows Uniscribe库),它就会崩溃.

一位客户在其Windows 7计算机上一直存在打印问题(运行Windows 7 Enterprise,32位).但是,我们还有一些其他客户运行各种版本的Windows 7,没有任何问题.

在其中一台出现打印问题的计算机上,我注意到usp10.dll该文件夹中存在旧版本(与Crystal Reports XI不兼容)C:\Program Files\Common Files\Microsoft Shared\Office10\.我不确定是什么应用程序安装了这些文件,因为客户没有安装Office 2002(所以我假设另一个应用程序安装了它们).但是,我暂时重命名了该文件,我们的应用程序能够正确打印,因此我们的应用程序似乎最初正在加载该文件的版本,这导致了崩溃.

崩溃仅在用户尝试打印报告时发生.我们的应用程序直接依赖于craxdrt.dll(Crystal Reports ActiveX Designer运行时库)和crviewer.dll(Crystal ActiveX报表查看器库),无论我们是通过craxdrt.dll还是通过Report Viewer控件直接打印,都会发生崩溃.

过去,我们通过将已知良好版本的usp10.dll复制到我们的应用程序目录并创建.local文件来启用DLL重定向来解决此问题.在客户站点,我尝试了这个,并尝试了为我们的EXE 创建.local文件夹并将usp10.dll放在那里的替代方法,但这两种方法都没有在我连接的机器上运行.

我注意到usp10.dll是Windows中的一个"已知"DLL(它有一个条目HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDLLs),但我在另一台Windows 7机器上运行我的应用程序(运行专业版,32位),这里也列出了DLL注册表中的已知DLL,通过使用Dependency Walker,我可以看到重定向正在该计算机上运行.这有点令人困惑,因为Microsoft 文档声明已知的DLL无法重定向.此外,正如我在问题标题中暗示的那样,我们的主要EXE不使用清单文件(Microsoft文档声明存在清单,嵌入式或独立式,禁用DLL重定向).

所以,我的问题是,有没有其他原因可以解决为什么DLL重定向可以在某些机器而不是其他机器上运行,这是否与Windows 7和Windows XP之间的差异有关?我曾考虑删除KnownDLLs注册表项中的所有内容,但由于重定向工作在此处具有相同设置的计算机上KnownDLLs,我不确定是否会实际解决问题,我不想删除该密钥我不需要.我还没有机会再次连接到客户的机器来运行Dependency Walker,但我不确定我是否能够解释它的日志(即使在它工作的机器上,我看到了很多LoadLibrary调用usp10.dll 指向重定向文件夹以外的文件夹,但有些调用显然已重定向,所以我不确定这意味着什么).


编辑:我应该还提到,每一次我们也已检查计算机具有的另一个副本usp10.dllSystem32的文件夹.看着克里斯的回答 …

windows dll windows-7

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

TextMate可以显示制表符与空格字符吗?

在Mac上使用TextMate,可以使用"隐形"显示

View -> Show Invisibles
Run Code Online (Sandbox Code Playgroud)

但是没有显示空格与制表符,并且"首选项"似乎也没有任何条目可以更改.有没有办法向他们展示?这是因为一些较老的编码器可能将标签或空格混合在一起,因此在编辑器中看起来不错的内容实际上可能是错位的.(编辑器将标签显示为2个空格)

textmate

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

Python UTF-8比较

a = {"a":"çö"}
b = "çö"
a['a']
>>> '\xc3\xa7\xc3\xb6'

b.decode('utf-8') == a['a']
>>> False
Run Code Online (Sandbox Code Playgroud)

那里发生了什么?

编辑=对不起,这是我的错.它仍然是假的.我在Ubuntu 10.04上使用Python 2.6.

python unicode utf-8 python-2.x

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

使用SSRS 2008参数"全选"

我想要一个参数从查询(或其他)加载可用值和"允许多个值".当我这样做时,列表以"全选"开头.

这很好,但似乎无法将参数默认为"全选",这在我的情况下是不可接受的.这个特定的报告将有8个可选参数,如果htey必须多次选择"全选",这几乎不是可选的.

因此,我创建了自己的"..All"选项和接受它的代码.我可以默认,但用户看到:

(Select All)
..All
Run Code Online (Sandbox Code Playgroud)

这看起来不专业.我在网上搜索过,似乎没有找到这个问题的答案.

有没有办法抑制(全选)或达到我需要的?有任何想法吗?

sql-server-2008 reporting-services ssrs-2008

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

33
推荐指数
2
解决办法
8700
查看次数

Maven不会部署依赖项

我有一个简单的项目,有3个依赖项,但出于某种原因,当我从eclipse运行时运行 - > maven install.我没有得到依赖.不在快照罐里面,不在外面......任何想法?这是我的pom:

<?xml version="1.0"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com</groupId>
  <artifactId>trade</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
  <name>trade</name>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.6</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.12</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)

java dependencies maven-2

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

SVN键绑定在Eclipse中不起作用

我在新的Windows 7上安装了Eclipse 3.6 64位.我尝试使用首选项窗口的Keys部分设置一些键绑定,即:

  • Alt+ C- 使用SVN提交

  • Alt+ U- 使用SVN更新

  • Alt+ R- 使用SVN恢复

这一切在过去在Windows XP上的Eclipse 3.5 32bit上完美无缺,但它在我最近的设置中无法正常工作.当我导航到"团队"菜单时,快捷方式会出现在上述操作旁边(即Eclipse 在"更新到HEAD"旁边写入Alt+ U).

有什么建议?

eclipse keyboard-shortcuts

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

将ASCII字符串转换为十进制和十六进制表示

我需要将像"hello2"这样的ASCII字符串转换为十进制和十六进制表示形式(数字形式,具体类型无关紧要).所以,"你好"将是:68 65 6c 6c 6f 32 in HEX.如果不使用巨大的if语句,我如何在C++中执行此操作?

编辑:好的,这就是我选择的解决方案:

int main()
{
    string c = "B";
    char *cs = new char[c.size() + 1];
    std::strcpy ( cs, c.c_str() );
    cout << cs << endl;

    char a = *cs;
    int as = a;
    cout << as << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ decimal

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

MySQL:AS 别名中可以有通配符吗?

我有一堆跨多个表命名相同的字段(我继承了它 - 不要责怪我;)。

是否可以通过通配符自动分配/添加别名,而不是详细设置所有别名?

我正在设想类似的东西(当然这实际上并不起作用):

SELECT t1.*,t2.* as alias2.*, t3.* as alias3.*
Run Code Online (Sandbox Code Playgroud)

所以我会得到返回的字段,例如:

name, address, city, state
alias2.name, alias2.address, alias2.city, alias2.state
alias3.name, alias3.address, alias3.city, alias3.state
Run Code Online (Sandbox Code Playgroud)

mysql sql alias wildcard table-alias

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

文件夹中文件名的NSStrings数组?

我正在尝试创建一个文件夹内容的NSStrings数组,我将其拖入我的项目......但是当我计算数组中的项目之后,它总是返回0;

所以,我项目中的文件夹看起来像这样

-Cards
  -Colors
     Blue.png
     Green.png
     Orange.png
     Yellow.png
     Purple.png
     Black.png
Run Code Online (Sandbox Code Playgroud)

我的代码试图获取这个文件列表(颜色pngs)

NSError *error = nil;
NSString *pathString = [[NSString alloc] init];
pathString = [[NSString alloc] initWithString:@"/Cards/Colors/"];
NSArray *fileList = [[NSArray alloc] init];
fileList = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:pathString error: &error];
[pathString release];
NSLog(@"%@", error);
// this is always 0
NSLog(@"file list has %i items", [fileList count]);
Run Code Online (Sandbox Code Playgroud)

我得到的NSError是

Error Domain=NSCocoaErrorDomain Code=260 "The operation couldn’t be completed. (Cocoa error 260.)" UserInfo=0x596db00 {NSUserStringVariant=(
    Folder
), NSFilePath=/Cards/Color/, NSUnderlyingError=0x5925ef0 "The operation couldn’t be completed. No such …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c nsfilemanager

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