質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

解決済

追加のソフトウェアをインストールなしで.exeに含める方法が知りたい

samidare_chan
samidare_chan

総合スコア278

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

2回答

-4評価

0クリップ

455閲覧

投稿2022/07/31 07:26

提示コードですが以下の///部の内部で.gswin64c.exeが必要で自分はghostscriptを環境にインストールしたのですがこのソフトを配布したいので外部のソフトウェアをインストールしないで.exeに含めたいのですがこれをするにはどうしたらいいのでしょうか?

cs

using System; using System.IO; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Diagnostics; public class FileData { public string? extension; //拡張子 public bool isCheck = true; //チェック状態 public string inputFilePath; //ファイルパス public string? saveFolderPath; //セーブフォルダパス public string fileName; //ファイル名 protected string? getSavePath() { if (saveFolderPath == null) { return null; } else { string name = Path.ChangeExtension(fileName, extension); string path = saveFolderPath + "\\" + name; return path; } } } public class Image_Data : FileData { private ImageMagick.MagickImage image; public Image_Data(string path) { inputFilePath = path; fileName = Path.GetFileName(path); image = new ImageMagick.MagickImage(path); } public void Generate() { image.Write(getSavePath()); } public static void Build_PDF(List<ImageMagick.MagickImage> list,string savePath) { ImageMagick.MagickImageCollection build = new ImageMagick.MagickImageCollection(); foreach(ImageMagick.MagickImage page in list) { build.Add(page); } build.Write(savePath); build.Dispose(); } } public class PDF_Data : FileData { ImageMagick.MagickImageCollection pageList = new ImageMagick.MagickImageCollection(); public PDF_Data(string path) { inputFilePath = path; fileName = Path.GetFileName(path); try { ///////////////////////////////////////////////////////////// pageList.Read(path); //読み込み ///////////////////////////////////////////////////////////// }catch(ImageMagick.MagickException e) { Console.WriteLine(e.Message); } } public void Generate() { int number = 0; foreach(ImageMagick.MagickImage page in pageList) { string path = saveFolderPath + "\\"+fileName+ extension +" "+ number; page.Write(path); number++; } } ~PDF_Data() { pageList.Dispose(); } } public class Program { public static void Main() { Console.WriteLine("ファイルパス: "); string path = "C:\\Users\\yw325\\Desktop\\output.pdf"; Console.WriteLine("保存ディレクトリパス: "); string save = "C:\\Users\\yw325\\Desktop\\新しいフォルダー"; PDF_Data pdf = new PDF_Data(path); pdf.saveFolderPath = save; pdf.extension = ".jpeg"; pdf.Generate(); //GhostscriptPipedOutput gsPipedOutput = new GhostscriptPipedOutput(); /* ImageMagick.MagickImage img1 = new ImageMagick.MagickImage("input.HEIC"); ImageMagick.MagickImage img2 = new ImageMagick.MagickImage("input.HEIC"); ImageMagick.MagickImage img3 = new ImageMagick.MagickImage("input.HEIC"); ImageMagick.MagickImageCollection images = new ImageMagick.MagickImageCollection(); images.Add(img1); images.Add(img2); images.Add(img3); images.Write("output.pdf"); //img.Dispose(); images.Dispose(); Console.WriteLine("終了"); */ //Console.ReadKey(); } }

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。