小编Fil*_*urt的帖子

方法指针和常规过程不兼容

我有一个应用程序,它有多种形式.所有这些表单都有一个PopupMenu.我以编程方式构建菜单项,所有这些都在一个共同的根菜单项下.我希望所有菜单项都调用相同的程序,菜单项本身基本上作为参数....

当我只有一个表单执行此功能时,我有这个工作.我现在有多种形式需要这样做.我正在将所有代码移动到一个公共单元.

Example.
Form A has PopupMenu 1.  When clicked, call code in Unit CommonUnit.
Form B has PopupMenu 2.  When clicked, call code in unit CommonUnit.
Run Code Online (Sandbox Code Playgroud)

当我需要从每个表单调用我的弹出窗口时,我调用我的顶级过程(在单元CommonUnit中),将顶部菜单项的名称从每个表单传递到公共单元中的顶级过程.

我正在使用代码向PopupMenu添加项目.

M1 := TMenuItem.Create(TopMenuItem);
M1.Caption := FieldByName('NAME').AsString;
M1.Tag := FieldByName('ID').AsInteger;
M1.OnClick := BrowseCategories1Click;
TopMenuItem.Add(M1);
Run Code Online (Sandbox Code Playgroud)

我编译时收到错误消息.具体来说,OnClick线正在抱怨

不兼容的类型:'方法指针和常规过程'.

我已经定义了BrowseCategories1Click,就像我在单个表单上执行此操作之前一样.唯一的区别是它现在定义在一个公共单元中,而不是作为表单的一部分.

它被定义为

procedure BrowseCategories1Click(Sender: TObject);
begin
//
end;
Run Code Online (Sandbox Code Playgroud)

解决这个问题的最简单方法是什么?

谢谢GS

delphi methods pointers delphi-2010

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

使用Haskell包'插件'时如何减少二进制占用空间?

我已经为我的Main.hs模块实现了一个简单的加载器用于haskell插件.我现在使用的唯一功能是load来自这个网站

查看我编译的应用程序大小,向我展示了x86架构上超过53 MB的可执行文件.我知道GHC的大部分内容都是链接的(由于haskell-source-to-binary-plugin功能),但这对我的目的来说太过分了.

是否有官方批准的方式来削减额外的功能,只保留(dyn-)load

plugins haskell footprint

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

child_process spawn()中的通配符?

我想在node.js中使用spawn执行像"doSomething ./myfiles/*.csv"这样的命令.我想使用spawn而不是exec,因为它是某种监视进程,我需要stdout输出.

我试过这个

var spawn = require('child_process').spawn; 
spawn("doSomething", ["./myfiles/*.csv"]);
Run Code Online (Sandbox Code Playgroud)

但是,通配符*.csv将不会被解释.

使用spawn()时是否无法使用通配符?还有其他可能解决这个问题吗?

谢谢

托本

exec spawn node.js

13
推荐指数
3
解决办法
2328
查看次数

如果不是图像文件,请检查文件扩展名并提醒用户

我需要帮助添加一些代码来检查文件是否为图像,以检查扩展名.这是我用来表示上传图片进度的代码.我在php中这样做,用户无法上传除.jpg .jpeg .gif和.png之外的任何文件,但他没有收到文件未上传的消息.当我为进度上传添加javascript代码时,我创建的php消息taht不再显示.

这是我的javascript upload.js文件代码:

 var handleUpload = function(event) {
    event.preventDefault();
    event.stopPropagation();

    var fileInput = document.getElementById('image_id');

    var data = new FormData();

    data.append('javascript', true);

        if(fileInput.files[0].size > 1050000) {
        document.getElementById("image_id").innerHTML = "Image too big (max 1Mb)";
        alert('Fotografija koju želite dodati je ve?a od 1Mb!');
        window.location="upload_images.php"
        return false;
        }

    for (var i =0; i < fileInput.files.length; ++i) {
        data.append('image', fileInput.files[i]);
    }

    var request = new XMLHttpRequest();

    request.upload.addEventListener('progress', function(event) {
        if (event.lengthComputable) {
            var percent = event.loaded / event.total;
            var progress = document.getElementById('upload_progress');

            while …
Run Code Online (Sandbox Code Playgroud)

javascript file-upload image

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

memberOf中的LDAP搜索通配符

我们有一个LDAP,其中包含许多遵循此模式的组:

Acme-MyApp-ABC-Admin Acme-MyApp-ABC-Bottlewasher Acme-MyApp-ABC-Cook Acme-MyApp-DEF-Admin Acme-MyApp-DEF-Bottlewasher Acme-MyApp-DEF-Cook等重复多次.

Acme-MyApp-ABC-Admin
Acme-MyApp-ABC-Bottlewasher
Acme-MyApp-ABC-Cook
Acme-MyApp-DEF-Admin
Acme-MyApp-DEF-Bottlewasher
Acme-MyApp-DEF-Cook
Run Code Online (Sandbox Code Playgroud)

正确返回Acme-MyApp-ABC-Admin组的成员.我们想找到所有管理员组的成员.

(&(objectClass=person)(memberOf=cn=Acme-MyApp-ABC-Admin,ou=Groups,dc=acme,dc=com))
Run Code Online (Sandbox Code Playgroud)

是否可以在DN中放置通配符?

ldap openldap ldap-query

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

安装证书后httpd无法启动

我有一个ssl证书,我正在运行ubuntu

domain.crt和domain.ca-bundle文件以及指定的文件夹,但无论我一直收到这些错误

[Sat Jul 27 06:35:00 2013] [error] Unable to configure verify locations for client authentication
[Sat Jul 27 06:35:00 2013] [error] SSL Library Error: 218570875 error:0D07207B:asn1 encoding routines:ASN1_get_object:header too long
[Sat Jul 27 06:36:55 2013] [error] Server should be SSL-aware but has no certificate configured [Hint: SSLCertificateFile] (/etc/apache2/sites-enabled/default-ssl:2)
Run Code Online (Sandbox Code Playgroud)

我的port.conf是

NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # …
Run Code Online (Sandbox Code Playgroud)

ssl apache2 ssl-certificate

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

将.sln替换为MSBuild并将包含的项目包装到目标中

我想创建一个MSBuild项目,它反映了解决方案中的项目依赖项,并将VS项目包装在可重用目标中.

我喜欢解决的问题是在BizTalk应用程序中svn导出,构建和部署特定程序集(及其依赖项).

我的问题是:如何为svn导出,构建和部署可重用的目标制定目标,并在为不同的依赖项构建它们时重用已包装的项目?

我知道只需构建解决方案并仅部署所需的程序集会更简单,但我希望尽可能多地重用目标.

部分

我想部署的项目

<Project DefaultTargets="Deploy" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ExportRoot Condition="'$(Export)'==''">Export</ExportRoot>
    </PropertyGroup>

    <Target Name="Clean_Export">
        <RemoveDir Directories="$(ExportRoot)\My.Project.Dir" />
    </Target>

    <Target Name="Export_MyProject">
        <Exec Command="svn export svn://xxx/trunk/Biztalk2009/MyProject.btproj --force" WorkingDirectory="$(ExportRoot)" />
    </Target>

    <Target Name="Build_MyProject" DependsOnTargets="Export_MyProject">
        <MSBuild Projects="$(ExportRoot)\My.Project.Dir\MyProject.btproj" Targets="Build" Properties="Configuration=Release"></MSBuild>
    </Target>

    <Target Name="Deploy_MyProject" DependsOnTargets="Build_MyProject">
        <Exec Command="BTSTask AddResource -ApplicationName:CORE -Source:MyProject.dll" />
    </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

它所依赖的项目看起来几乎就像这样(其他.btproj和.csproj).

msbuild biztalk

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

如何在xslt中控制布尔渲染

要使用符合<boolean> XML-RPC的规范,我需要改变我xs:booleantrue|false1|0.

我用xsl解决了这个问题:选择

<xsl:template match="Foo">
    <member>
        <name>Baz</name>
        <value>
            <boolean>
                <xsl:choose>
                    <xsl:when test=".='true'">1</xsl:when>
                    <xsl:otherwise>0</xsl:otherwise>
                </xsl:choose>
            </boolean>
        </value>
    </member>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)

但是想知道在用xslt 1.0转换时是否有一种不那么脆弱的方法来控制布尔值的渲染方式.

xslt casting boolean xml-rpc

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

正常显示截断的文本,但在悬停时显示完整的文本

我有一个div,里面有一段左右的文字.我希望它能正常显示前几个单词,但展开以显示悬停时的全文.理想情况下,我只想使用CSS并且没有数据重复.

这就是我尝试过的:http://jsfiddle.net/SEgun/

我不希望div在文本扩展时移动,只有div 2才能展开以显示覆盖div 3的全文.这可能吗?PS我不关心延迟浏览器.

css

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

是否可以选择跨度的堆叠顺序?

我正在使用Twitter Bootstrap启动一个项目,并且非常像响应式css,当视口变小时,使跨度堆叠在彼此之上.

鉴于以下设计:http://jsfiddle.net/kJp6J/1/

Twitter响应式设计

是否可以选择首先在小屏幕上堆叠哪个块?在我的情况下,我想首先出现右边的块,然后是左边的块.

有没有办法做到这一点?

responsive-design twitter-bootstrap

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