问题列表 - 第22463页

如何在没有RegAsm.exe的情况下注册类型库

我想知道是否可以在不使用RegAsm工具的情况下注册类型库.这是我的情况,希望能解释我为什么要这样做:

我正在开发.NET中的程序集,它将为我们的旧VB6应用程序提供一些现代功能.我使用RegAsm在我的开发机器上成功注册了程序集和类型库,如下所示:

regasm.exe MyAssembly.dll /tlb /codebase
Run Code Online (Sandbox Code Playgroud)

上面的命令生成类型库(MyAssembly.tlb)并注册它以及注册程序集.我需要注册的类型库,以便我可以在VB6中使用Intellisense.

这个方法的问题 在于,在生成类型库文件时,我没有像使用TlbExp.exe那样具有相同级别的控制.特别是,我需要使用TlbExp的/ names标志来指定我的属性名称的正确情况(RegAsm屠宰它们).因此,如果我使用TlbExp生成我的tlb文件,是否有任何方法可以将其与程序集注册过程分开注册?

编辑: da_m_n的回答对我问的问题是正确的.但是,我错误的假设是因为RegAsm可以注册一个类型库,必须注册tlb以便在VB6中引用它.所以现在我正在注册程序集并使用固定名称引用未注册的TlbExp生成的tlb.

.net tlbexp com-interop regasm dllregistration

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

重新排序因子的级别而不更改值的顺序

我的数据框有一些数值变量和一些分类factor变量.这些因素的等级顺序不是我希望它们的方式.

numbers <- 1:4
letters <- factor(c("a", "b", "c", "d"))
df <- data.frame(numbers, letters)
df
#   numbers letters
# 1       1       a
# 2       2       b
# 3       3       c
# 4       4       d
Run Code Online (Sandbox Code Playgroud)

如果我更改了级别的顺序,则这些字母不再带有相应的数字(我的数据从这一点开始是完全无意义的).

levels(df$letters) <- c("d", "c", "b", "a")
df
#   numbers letters
# 1       1       d
# 2       2       c
# 3       3       b
# 4       4       a
Run Code Online (Sandbox Code Playgroud)

我只想更改级别顺序,因此在绘图时,条形图按所需顺序显示 - 可能与默认的字母顺序不同.

r levels

114
推荐指数
5
解决办法
8万
查看次数

比较7个单词,看看它们中的5个是否相等.怎么样?

我在数组中有七个单词:

string[7] = {x,x,x,x,x,x,x};
Run Code Online (Sandbox Code Playgroud)

x是从另一个数组生成的:

string[4]={a,b,c,d};
Run Code Online (Sandbox Code Playgroud)

这意味着每个x可以是a或b或c或d.它是随机生成的.这可能是一个例子:

string[7]= {a,a,d,a,a,c,a}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何检查是否有五个具有相同值的x?

这是我正在努力的扑克应用程序.

c# string random compare

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

从C#调用非托管.dll的性能

使用以下语法从C#应用程序调用C++编写的.dll会增加多长时间?

[DllImport("abc.dll", EntryPoint = "xcFoo", CallingConvention = CallingConvention.Cdecl)]
public extern static Result Foo(out IntPtr session,
                [MarshalAs(UnmanagedType.FunctionPtr)]ObjectCallback callback, 
                UInt64 turnKey,
                string serverAddress, 
                string userId, 
                string password);
Run Code Online (Sandbox Code Playgroud)

有更有效的方法吗?

c# c++ interop unmanaged managed

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

如何使用Delphi对GUID的SQL Server方式进行排序

在我正在研究的项目中,如果我可以对guid的内存列表进行排序并与这些相同guid命令的SQL服务器表进行比较,那将是很好的.不幸的是,当SQL Server返回有序列表时,订单不会立即显现.

在内存列表中对此进行排序的最佳方法是什么,以便顺序与SQL Server返回的顺序相同?

例如,查询" SELECT ID FROM TABLE1 ORDER BY ID"返回:

A46030EC-BF3A-4F7C-88CC-00117DBC1A52
159A0A9D-18B7-4D6C-ABB3-005FAB666D91
3C58CFC5-1829-481C-9686-007CE71132B8
15A96D5F-DAFB-4EF1-9202-00B201CE5151
BCFDE733-0AB0-483F-B912-00BF93F6FA7E
6CC06558-7670-4879-9D3F-00CB3D3649BD
Run Code Online (Sandbox Code Playgroud)

为了这个问题,我假设我有一个包含上面guid值的字符串数组,但是按照以下顺序:

159A0A9D-18B7-4D6C-ABB3-005FAB666D91
15A96D5F-DAFB-4EF1-9202-00B201CE5151
6CC06558-7670-4879-9D3F-00CB3D3649BD
8A9325AF-A84E-4BDB-AFA8-C9D09D7FC064
A46030EC-BF3A-4F7C-88CC-00117DBC1A52
BCFDE733-0AB0-483F-B912-00BF93F6FA7E
Run Code Online (Sandbox Code Playgroud)

我想看到我在SQL查询中缺少一个,并且有一个SQL查询没有的查询.最快的方法显然是将两个列表以相同的方式排序,但我不想执行诸如" SELECT ID FROM TABLE1 ORDER BY cast(ID as varchar(100))"之类的查询,而是希望在Delphi端修复排序.

sql-server delphi sorting guid

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

在Java中转换为大写和小写

我想将字符串的第一个字符转换为大写,其余字符转换为小写.我该怎么做?

例:

String inputval="ABCb" OR "a123BC_DET" or "aBcd"
String outputval="Abcb" or "A123bc_det" or "Abcd"
Run Code Online (Sandbox Code Playgroud)

java string

73
推荐指数
5
解决办法
33万
查看次数

用于 ANTLR 的 Perl 正则表达式语法

我需要为一个项目创建一个正则表达式解析器,我正在使用 ANTLR v3 来做到这一点。我试图找到一个最新的、类似于 Perl6 的正则表达式语法。有人有消息来源吗?由于某种原因,谷歌搜索一直很困难。

regex grammar parsing antlr

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

使用GenericForeignKey()的非默认管理器

我已经更改了一些GenericForeignKey()可以引用的对象的默认管理器,这些对象可能不再出现在该默认管理器中.

我有其他经理可以找到这些已删除的对象,但我认为没有办法告诉内容类型框架.这可能吗?

我正在使用一些涉及以下经理的模型实现"软删除":

from django.db import models

SDManager(models.Manager):

    def get_query_set(self):
        return super(SDManager, self).get_query_set().filter(is_deleted=False)

SDDeletedManager(models.Manager):

    def get_query_set(self):
        return super(SDDeletedManager, self).get_query_set().filter(is_deleted=True)
Run Code Online (Sandbox Code Playgroud)

这允许我执行以下操作:

SDModel(models.Model):
    # ...
    objects = SDManager() # Only non (soft) deleted objects
    all_objects = models.Manager() # The default manager
    deleted_objects = SDDeletedManager() # Only (soft) deleted objects
Run Code Online (Sandbox Code Playgroud)

当使用GenericForeignKey()模型中的字段来引用定义的对象(例如SDModel,它)时,它使用_default_managerobjects管理器求值的属性来获取引用.这意味着当对象被软删除时它会丢失引用.

这是我使用GenericForeignKey()字段的主要原因之一.我一直在研究的解决方案是实现内容类型框架的较小版本,以便我可以定义自己get_object()使用all_objects管理器来访问引用对象.

所以我的问题是:

是否可以使用现有内容类型框架的非默认管理器,以便找到软删除的对象,或者我是否必须从头开始重新实现所需的所有部分?

generics django content-type

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

iTextSharp - 如何在页面上获取单词的位置

我正在使用iTextSharp和reader.GetPageContent方法从PDF中提取文本.我需要找到文档中找到的每个单词的矩形/位置.有没有办法使用iTextSharp获取PDF中单词的矩形/位置?

c# pdf itextsharp

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

如何在JSF模板中定义将在别处定义的onLoad函数

我正在为我的网站设计视图,该网站有一个标准的登录和登录页面,我希望为我的登录页面调用onLoad函数,但不是我的其他页面(尚未).我有一个template.xhtml文件,它有这个插入:

<div id="content"> <ui:insert name="content"/> </div>

然后在login.xhtml我有:

<ui:define name="content"> ... </ui:define>

通常我会把它放在login.xhtml中:

<body onload="document.getElementById('login_form:name').focus();">

但由于我使用的是JSF的ui组合标签,因此我无法<body/>在login.xhtml中使用该标签(至少我尝试这样做的方式).

有没有办法用我描述的结构来实现这一目标?我想这样做的方法是让onLoad调用模板中的一个函数,然后每个带有ui:define的页面都会填充这个函数.那可能吗?

谢谢!

java jsf jsp facelets

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