小编mhs*_*mhs的帖子

基于INF的打印机驱动程序的WIX安装程序

我正在尝试为打印机驱动程序创建一个安装程序,使用WIX

我有

  • 一些Dlls
  • 一个*.cat文件
  • 一个*.gdp文件
  • 一个*.inf文件

我正在考虑使用INF来部署驱动程序,但不知道如何实现它.

我也播下了这个问题,(可能是重复的)但作为一个初学者我不能完全理解如何做到这一点.

我需要通过自己和Write Registry将这些DLL和其他文件复制到相关文件夹中.或者是他们使用INF文件通过WIX引擎完成任务的任何简单方法?如果是的话,任何人都可以教我应该遵循的步骤吗?


我尝试将所有必要的文件复制到文件夹

  <Component Id="PRNDRV_cat" Guid="{4fba0d21-64bb-458d-9b78-23aed7a39d14}" Directory = "PrinterFolder">
    <difx:Driver Legacy='yes' />
      <File Id="Catalog" Name="sielprndrv.cat" Source="Printer\prndrv.cat" />
      <File Id="DataBase" Name="SIELPRNDRV.gpd" Source="Printer\PRNDRV.gpd" />
      <File Id="Info" Name="SIELPRNDRV.inf" KeyPath="yes" Source="Printer\PRNDRV.inf" />
      <File Id="ini" Name="SIELPRNDRV.ini" Source="Printer\PRNDRV.ini" />
  </Component>
Run Code Online (Sandbox Code Playgroud)

并使用以下命令编译

candle -ext WixDifxAppExtension SielDrivers.wxs
light -ext WixUIExtension -ext WixDifxAppExtension SielDrivers.wixobj difxapp_x64.wixlib -o Setup.msi
Run Code Online (Sandbox Code Playgroud)

安装后,我可以看到它已在"程序和功能"中列出,但没有作为打印机添加到"设备和打印机"中.

我错过了什么?

installer wix wix3.6

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

如何制作具有连续id的线程

当我创建它们时,我需要为某些线程分配连续的ID,并且无论起始id是什么(如11,12,13,...或9,10,11)

这就是我所做的,这里我创建4个线程并调用My_function()

for ( byte i = 0 ; i < 4 ; i++ )
    {
     myThreadArray[i] = new Thread(new ParameterizedThreadStart(My_function));
     myThreadArray[i].Start(i);
    }
Run Code Online (Sandbox Code Playgroud)

它似乎工作,但我可以保证,我总是为他们分配连续的ID

c# multithreading

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

如何在Excel工作表中查找确切值

如何在Excel工作表中找到字符串值。我正在尝试,objRange.Find()但这也给我错误的地址。作为示例,我想要'Object_paint'的地址,但它也提供了'Object_paint_and_stk'的地址。

我应该只获得确切的价值吗?

Set objWorksheet = objWorkbook.Worksheets(worksheet)
Set objRange = objWorksheet.Range("B2:B600")    
Set objFind = objRange.Find("object_paint")

If Not objFind Is Nothing Then
    searchValue = objFind.AddressLocal(False, False)
end if
Run Code Online (Sandbox Code Playgroud)

vbscript

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

步幅和填充图像

我想使用CreateBitmapFromMemory方法,它需要步幅作为输入.而这个步伐使我困惑.

cbStride [in]

输入:UINT

pbBuffer中连续扫描行之间的字节数.

并且在这里它说:跨距=图像宽度+填充

  1. 为什么我们需要这些额外的空间(填充).为什么不只是图像宽度.

这是怎么计算步幅的吧?

    lWidthByte = (lWidth * bits + 7) / 8;
Run Code Online (Sandbox Code Playgroud)

lWidth→像素数

bits→每像素位数

我认为8的转换是转换为字节.但,

  1. 什么是(+7)在这做什么?

最后

    cbStride =((lWidthByte + 3) / 4) * 4;
Run Code Online (Sandbox Code Playgroud)
  1. 这里发生了什么?(为什么不cbStride = lWidthByte)

请帮我清除这些.

image image-processing

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

如何在脆皮字段中循环

如何在表格中排列表格?

我有一个正常的表格,我像这样在我的模板中安排它。

<table border="0" >
    {% for field in form %}
        <tr >
            <td>
                <label for="{{ field.label }}">{{ field.label_tag }}
                    {% if field.field.required %}<span style="color:red"; class="special_class">*</span>{% endif %}</label>
            </td>
            <td>
                {{ field }}
            </td>
        </tr>
    {% endfor %}
</table>
Run Code Online (Sandbox Code Playgroud)

现在我想使用脆皮形式。但不知道如何显示我的表单。

原因是它与此有关。

{% load crispy_forms_tags %}
{% crispy form %}
Run Code Online (Sandbox Code Playgroud)

但这并没有很好地安排我的田地,

如何通过循环访问这些字段?任何帮助将不胜感激。

django django-templates django-forms django-crispy-forms

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