當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript winPackager.WinPackager類代碼示例

本文整理匯總了TypeScript中electron-builder-lib/out/winPackager.WinPackager的典型用法代碼示例。如果您正苦於以下問題:TypeScript WinPackager類的具體用法?TypeScript WinPackager怎麽用?TypeScript WinPackager使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了WinPackager類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: copyFile

    consume: async (file, stats) => {
      if (stats.isDirectory()) {
        return
      }

      // GBK file name encoding (or Non-English file name) caused a problem
      const relativeSafeFilePath = encodeURI(file.substring(dir.length + 1).replace(/\\/g, "/")).replace(/%5B/g, "[").replace(/%5D/g, "]")
      archive._append(file, {
        name: relativeSafeFilePath,
        prefix,
        stats,
      })

      // createExecutableStubForExe
      // https://github.com/Squirrel/Squirrel.Windows/pull/1051 Only generate execution stubs for the top-level executables
      if (file.endsWith(".exe") && !file.includes("squirrel.exe") && !relativeSafeFilePath.includes("/")) {
        const tempFile = await packager.getTempFile("stub.exe")
        await copyFile(path.join(vendorPath, "StubExecutable.exe"), tempFile)
        await execWine(path.join(vendorPath, "WriteZipToSetup.exe"), ["--copy-stub-resources", file, tempFile])
        await packager.sign(tempFile)

        archive._append(tempFile, {
          name: relativeSafeFilePath.substring(0, relativeSafeFilePath.length - 4) + "_ExecutionStub.exe",
          prefix,
          stats: await stat(tempFile),
        })
      }
    }
開發者ID:ledinhphuong,項目名稱:electron-builder,代碼行數:28,代碼來源:squirrelPack.ts

示例2: buildInstaller

  async buildInstaller(outFileNames: OutFileNames, appOutDir: string, outDir: string, arch: Arch) {
    const packager = this.packager
    const dirToArchive = await packager.info.tempDirManager.createTempDir({prefix: "squirrel-windows"})
    const outputDirectory = this.outputDirectory
    const options = this.options
    const appUpdate = path.join(dirToArchive, "Update.exe")
    await BluebirdPromise.all([
      copyFile(path.join(options.vendorPath, "Update.exe"), appUpdate)
        .then(() => packager.sign(appUpdate)),
      BluebirdPromise.all([remove(`${outputDirectory.replace(/\\/g, "/")}/*-full.nupkg`), remove(path.join(outputDirectory, "RELEASES"))])
        .then(() => ensureDir(outputDirectory))
    ])

    if (options.remoteReleases) {
      await syncReleases(outputDirectory, options)
    }

    const version = convertVersion(options.version)
    const nupkgPath = path.join(outputDirectory, outFileNames.packageFile)
    const setupPath = path.join(outputDirectory, outFileNames.setupFile)

    await BluebirdPromise.all<any>([
      pack(options, appOutDir, appUpdate, nupkgPath, version, packager),
      copyFile(path.join(options.vendorPath, "Setup.exe"), setupPath),
      copyFile(options.loadingGif ? path.resolve(packager.projectDir, options.loadingGif) : path.join(options.vendorPath, "install-spinner.gif"), path.join(dirToArchive, "background.gif")),
    ])

    // releasify can be called only after pack nupkg and nupkg must be in the final output directory (where other old version nupkg can be located)
    await this.releasify(nupkgPath, outFileNames.packageFile)
      .then(it => writeFile(path.join(dirToArchive, "RELEASES"), it))

    const embeddedArchiveFile = await this.createEmbeddedArchiveFile(nupkgPath, dirToArchive)

    await execWine(path.join(options.vendorPath, "WriteZipToSetup.exe"), [setupPath, embeddedArchiveFile])

    await packager.signAndEditResources(setupPath, arch, outDir)
    if (options.msi && process.platform === "win32") {
      const outFile = outFileNames.setupFile.replace(".exe", ".msi")
      await msi(options, nupkgPath, setupPath, outputDirectory, outFile)
      // rcedit can only edit .exe resources
      await packager.sign(path.join(outputDirectory, outFile))
    }
  }
開發者ID:ledinhphuong,項目名稱:electron-builder,代碼行數:43,代碼來源:squirrelPack.ts

示例3: createEmbeddedArchiveFile

 private async createEmbeddedArchiveFile(nupkgPath: string, dirToArchive: string) {
   const embeddedArchiveFile = await this.packager.getTempFile("setup.zip")
   await exec(path7za, compute7zCompressArgs("zip", {
     isRegularFile: true,
     compression: this.packager.compression,
   }).concat(embeddedArchiveFile, "."), {
     cwd: dirToArchive,
   })
   await exec(path7za, compute7zCompressArgs("zip", {
     isRegularFile: true,
     compression: "store" /* nupkg is already compressed */,
   }).concat(embeddedArchiveFile, nupkgPath))
   return embeddedArchiveFile
 }
開發者ID:ledinhphuong,項目名稱:electron-builder,代碼行數:14,代碼來源:squirrelPack.ts

示例4:

 .then(() => packager.sign(appUpdate)),
開發者ID:ledinhphuong,項目名稱:electron-builder,代碼行數:1,代碼來源:squirrelPack.ts


注:本文中的electron-builder-lib/out/winPackager.WinPackager類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。