C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[26]: 他のプログラムを起動する方法に関する,コンパイ [1]


(過去ログ 37 を表示中)

[トピック内 37 記事 (21 - 37 表示)]  << 0 | 1 >>

■18443 / inTopicNo.21)  Re[13]: 他のプログラムを起動する方法に関する,コンパイ
  
□投稿者/ 組込系の人 (40回)-(2008/05/14(Wed) 11:08:09)
No18438 (初心者なハム さん) に返信

>>
>>・VC++6 で作られたプロジェクトファイル(*.dsw)がある
>>・C# で書いたプログラムで、↑を VS2005 に読み込ませて VS2005 形式に(自動的に?)変換したい
>>
>>てことですか?
>  おっしゃるとおりです.

上記の事をやろうとおもうと、C++、C#どちらもプロ中のプロってぐらいじゃないと無理かと・・・・

C#のプログラムでVC6のプロジェクトファイルの中身全てを解析し、C++言語をC#に変換して、
なおかつVS2005形式のプロジェクトを作成ってことですから。
もしそのソフトが完成したら、私に売ってくださいorz

それをやるんなら、C++で出来ているプログラムの仕様を把握して、
C#で1から作った方が難易度は低いと思いますが、どうでしょう?
引用返信 編集キー/
■18453 / inTopicNo.22)  Re[14]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (8回)-(2008/05/14(Wed) 11:37:40)
No18443 (組込系の人 さん) に返信
No18427 (渋木宏明(ひどり) さん) に返信

 たびたび,すみません.

> ・VC++6 で作られたプロジェクトファイル(*.dsw)がある
> ・C# で書いたプログラムで、↑を VS2005 に読み込ませて VS2005 形式に(自動的に?)変換したい
>
> てことですか?
>> おっしゃるとおりです.
 すみません.私の書き間違え(おっしゃるとおりです.の所)でした.C# で書いたプログラムは,VC++で作ったプログラムを
自動的にC#に変換するプログラムではありません.こちらの発言ミスです.大変申し訳ないです.

        C#で作ったプログラム ⇒ C++で作ったプログラム
          へと,VS2005の環境下で移行させたいのです.

と記述したのは,2つは異なる仕事をするプログラムで,単に1つのプログラム(仕事:C#で作成)が終了したら,もう一つのプログラム(他の仕事:C++で作成)を
自動的に起動させ,走らせることを考えておりました.

引用返信 編集キー/
■18454 / inTopicNo.23)  Re[15]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ επιστημη (983回)-(2008/05/14(Wed) 11:41:02)
επιστημη さんの Web サイト
> 単に1つのプログラム(仕事:C#で作成)が終了したら,もう一つのプログラム(他の仕事:C++で作成)を
> 自動的に起動させ,走らせることを考えておりました.

VisualStudioを起動しなきゃいかんのですか?
C#で書かれた csharp.exe と C++で書かれた cpp.exe があって、
cshap.exe, cpp.exe を順に起動するってことではなくて?

引用返信 編集キー/
■18457 / inTopicNo.24)  Re[15]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 組込系の人 (43回)-(2008/05/14(Wed) 11:44:30)
No18453 (初心者なハム さん) に返信

>         C#で作ったプログラム ⇒ C++で作ったプログラム
>           へと,VS2005の環境下で移行させたいのです.
>
> と記述したのは,2つは異なる仕事をするプログラムで,単に1つのプログラム(仕事:C#で作成)が終了したら,もう一つのプログラム(他の仕事:C++で作成)を
> 自動的に起動させ,走らせることを考えておりました.
>

ということは、
C++で作成したexeファイルをC#で作成したソフトから呼び出せば良いというわけですね?
最初に提示された「test3.dsw」が気になってしょうがなかったので、
変にこちらが想像を膨らませてしまって、逆に混乱させてたら申し訳ないです。

以前に書き込んだ
  System.Diagnostics.Process.Start("C++で作った.exe");
でOKということですね。

あとは最初にあった
  「無効なトークン'('がクラス,構造体またはインターフェイスのメンバ宣言で使用されています.」
というコンパイルエラーが問題なんですね。それは解決しましたでしょうか?
引用返信 編集キー/
■18531 / inTopicNo.25)  Re[16]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (9回)-(2008/05/14(Wed) 18:05:30)
No18454 (επιστημη さん) に返信
 コメントを頂き,誠にありがとうございます.

>>単に1つのプログラム(仕事:C#で作成)が終了したら,もう一つのプログラム(他の仕事:C++で作成)を
>>自動的に起動させ,走らせることを考えておりました.
>
> VisualStudioを起動しなきゃいかんのですか?
 確かにおっしゃる通りかと思いました.つくったEXEにあらかじめ,自動に走るように組み込めば宜しいと思います.
ただ,私のボス(教員)が何故か,VisualStudioを起動してからの,プログラムの自走を好んでいらっしゃるので,そういう方向
で今,制作しています.
 大変申し訳ないです.


No18454 (組込系の人 さん) に返信
 お教え頂き,誠にありがとうございます.それと,返答が遅れてすみません.先ほどまで大学の図書館で調べ物をしておりました….
度々,申し訳ないです.

> >        C#で作ったプログラム ⇒ C++で作ったプログラム
> >          へと,VS2005の環境下で移行させたいのです.
> >
> >と記述したのは,2つは異なる仕事をするプログラムで,単に1つのプログラム(仕事:C#で作成)が終了したら,もう一つのプログラム(他の仕事:C++で作成)を
> >自動的に起動させ,走らせることを考えておりました.
> >
>
>ということは、
>C++で作成したexeファイルをC#で作成したソフトから呼び出せば良いというわけですね?
>最初に提示された「test3.dsw」が気になってしょうがなかったので、
>変にこちらが想像を膨らませてしまって、逆に混乱させてたら申し訳ないです。
>
>以前に書き込んだ
>  System.Diagnostics.Process.Start("C++で作った.exe");
>でOKということですね。
 はい.そのとおりです.

>あとは最初にあった
>  「無効なトークン'('がクラス,構造体またはインターフェイスのメンバ宣言で使用されています.」
>というコンパイルエラーが問題なんですね。それは解決しましたでしょうか?
 それが…,まだ解決しません.そのEXEは理解し,作りましたが

    System.Diagnostics.Process.Start("C++で作った.exe");

の "C++で作った.exe" の個所について,厳密な設定とかあるのでしょうか.いまいち,よくわかっておりません.
 ご教授をお願い致します.

引用返信 編集キー/
■18532 / inTopicNo.26)  Re[17]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ はつね (683回)-(2008/05/14(Wed) 18:19:34)
はつね さんの Web サイト
No18531 (初心者なハム さん) に返信
>  それが…,まだ解決しません.そのEXEは理解し,作りましたが
>
>     System.Diagnostics.Process.Start("C++で作った.exe");
>
> の "C++で作った.exe" の個所について,厳密な設定とかあるのでしょうか.いまいち,よくわかっておりません.

C++でつくった.exeはどのフォルダに入っているでしょうか。exeファイル名ではなくフルパス指定してもダメですか?

例)
c:\work\hogehogeフォルダに"C++でつくった.exe"があるのならば
System.Diagnostics.Process.Start("c:\work\hogehogeフォルダ\C++で作った.exe");


C#はまったく門外漢なのですが
System.Diagnostics.Process.Start(@"c:\work\hogehogeフォルダ\C++で作った.exe");
のように「@」が必要だったりはしないのですよね?>有識者の方
引用返信 編集キー/
■18536 / inTopicNo.27)  Re[18]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 組込系の人 (45回)-(2008/05/14(Wed) 18:37:53)
No18532 (はつね さん) に返信
> ■No18531 (初心者なハム さん) に返信
>> それが…,まだ解決しません.そのEXEは理解し,作りましたが
>>
>>    System.Diagnostics.Process.Start("C++で作った.exe");
>>
>>の "C++で作った.exe" の個所について,厳密な設定とかあるのでしょうか.いまいち,よくわかっておりません.
>
> C++でつくった.exeはどのフォルダに入っているでしょうか。exeファイル名ではなくフルパス指定してもダメですか?
>
> 例)
> c:\work\hogehogeフォルダに"C++でつくった.exe"があるのならば
> System.Diagnostics.Process.Start("c:\work\hogehogeフォルダ\C++で作った.exe");
>
>
> C#はまったく門外漢なのですが
> System.Diagnostics.Process.Start(@"c:\work\hogehogeフォルダ\C++で作った.exe");
> のように「@」が必要だったりはしないのですよね?>有識者の方


@いります。はつねさんの例で動くはずですが、そもそもコンパイルが出来ていない様ですが、
エラーそのものは'('の数がおかしいといっているので、その近辺の括弧とか';'とかを確認するしかなさそうですよ。



最後の裏技としては、その前後数十(数百?)行のコードをここに貼り付けて
わんくまのみんなでにらめっことか・・・・・
まぁ、自力解決するべき内容ではありますが。

引用返信 編集キー/
■18542 / inTopicNo.28)  Re[19]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (10回)-(2008/05/14(Wed) 19:40:47)
No18532 (はつね さん) に返信

No18536 (組込系の人 さん) に返信
 先ほどから,色々なアドバイスや対処をして頂き,誠にありがとうございます.ありがたい気持ちでいっぱいです.


> @いります。はつねさんの例で動くはずですが、そもそもコンパイルが出来ていない様ですが、
> エラーそのものは'('の数がおかしいといっているので、その近辺の括弧とか';'とかを確認するしかなさそうですよ。
 あまりそこら辺の兼ね合いはよくわからないのですが,1つ補足なのですが,System.Diagnostics.Process.Start("c:\work\hogehogeフォルダ\C++で作った.exe");を入れなければ
エラー(無効なトークン)は出ないのですが,System.Diagnostics.Process.Start(@"C:\Users\田村研\Desktop\shoWindows - コピー\analysis\0214\\test3.exe"); ←(名前は少しいじっています)
の1行を入れた場合にエラーである

            「無効なトークン'('がクラス,構造体またはインターフェイスのメンバ宣言で使用されています.」 

とでてきます.この場合,その近辺の行の括弧とか';'とかは関係してくるものなのでしょうか.
 ご教授をお願い致します.


引用返信 編集キー/
■18546 / inTopicNo.29)  Re[20]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 銀閣寺在住 (1回)-(2008/05/14(Wed) 20:02:21)
>クラス,構造体またはインターフェイスのメンバ宣言で使用されています

メンバ宣言?


引用返信 編集キー/
■18675 / inTopicNo.30)  Re[21]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (11回)-(2008/05/15(Thu) 12:58:30)
No18546 (銀閣寺在住 さん) に返信
 ご意見を頂き,誠にありがとうございます.

> >クラス,構造体またはインターフェイスのメンバ宣言で使用されています
>
> メンバ宣言?
 はい,そう表示されました.
引用返信 編集キー/
■18852 / inTopicNo.31)  Re[20]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 中村家 (1回)-(2008/05/16(Fri) 18:08:19)
No18542 (初心者なハム さん) に返信
>  あまりそこら辺の兼ね合いはよくわからないのですが,1つ補足なのですが,System.Diagnostics.Process.Start("c:\work\hogehogeフォルダ\C++で作った.exe");を入れなければ
> エラー(無効なトークン)は出ないのですが,System.Diagnostics.Process.Start(@"C:\Users\田村研\Desktop\shoWindows - コピー\analysis\0214\\test3.exe"); ←(名前は少しいじっています)
> の1行を入れた場合にエラーである
>
>             「無効なトークン'('がクラス,構造体またはインターフェイスのメンバ宣言で使用されています.」 
>
> とでてきます.この場合,その近辺の行の括弧とか';'とかは関係してくるものなのでしょうか.
>  ご教授をお願い致します.
>

初心者なハムさん、はじめまして。中村家と申します。

エラーの出る該当行の、System.Diagnostics.Process.Start(@"長いので省略.exe")を入れると
上記エラーになるとの事ですが、

System.Diagnostics.Process.Start(@"notepad.exe")

と、入力しても同様のエラーとなってしまいますか?

上記コードをコピペで無くVS2005のエディタで挿入部分の前後の改行を
一度削除した後手入力で記述し、ビルドしてみて下さい。

#VS以外の別エディタでコードを書いて、ビルドのみVSで。なんてしてませんか?

的外れだったらすみません。
引用返信 編集キー/
■19033 / inTopicNo.32)  Re[21]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 生涯PG希望 (1回)-(2008/05/19(Mon) 14:21:44)
> 「無効なトークン'('がクラス,構造体またはインターフェイスのメンバ宣言で使用されています.」 

メンバ宣言ということは…
たとえば、(メソッドの内部ではなく)クラスの直下に
System.Diagnostics.Process.Start(@"〜(省略)〜\aaa.exe");
と記述すると、上記のコンパイルエラーが発生しますね。

記述位置、間違っていませんか?
もう少し該当箇所の前後もコードを記載すれば何かわかるかもしれません。
引用返信 編集キー/
■19160 / inTopicNo.33)  Re[22]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (12回)-(2008/05/20(Tue) 16:59:52)
(中村家 さん) に返信:
 色々とお教え下さり,誠にありがとうございます.

>System.Diagnostics.Process.Start(@"notepad.exe")
>と、入力しても同様のエラーとなってしまいますか?
>上記コードをコピペで無くVS2005のエディタで挿入部分の前後の改行を
>一度削除した後手入力で記述し、ビルドしてみて下さい。
 大変申し訳ないのですが,エラーが出てしまいました・・・・・


>#VS以外の別エディタでコードを書いて、ビルドのみVSで。なんてしてませんか?
>的外れだったらすみません。
 一応,そういうことはしてません.起動をさせるプログラムはVSで作っています.それと,色々とお聞き
頂き,ありがとうございます.色々と指摘されると勉強になります.



(生涯PG希望 さん) に返信:
 色々とお教え下さり,誠にありがとうございます.

> たとえば、(メソッドの内部ではなく)クラスの直下に
> System.Diagnostics.Process.Start(@"〜(省略)〜\aaa.exe");
> と記述すると、上記のコンパイルエラーが発生しますね。
>
> 記述位置、間違っていませんか?
 よく分かりませんが,大丈夫かと….ただ,それなら何故エラーが出るのかと言われると…です.
ちなみに直接  System.Diagnostics.Process.Start(@"〜(省略)〜\aaa.exe");  を書くと,「無効なトークン'('がクラス,構造体またはインターフェイスのメンバ宣言で使用されています.」と出るのですか


private void button2_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"〜(省略)〜\aaa.exe");  
}

 
のように,Dialog(アプリケーション起動時での窓に相当)でボタンを作り,押すことでなら,他のプログラムを起動させることができます.この差の違いがよくわかりません.
何ででしょう.もし,わかる方がございましたら,ご教授をお願い致します.



引用返信 編集キー/
■19162 / inTopicNo.34)  Re[23]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ επιστημη (1033回)-(2008/05/20(Tue) 17:04:47)
επιστημη さんの Web サイト
> ...
> のように,Dialog(アプリケーション起動時での窓に相当)でボタンを作り,押すことでなら,他のプログラムを起動させることができます.この差の違いがよくわかりません.

だからぁ、うまいこといかん場合のコードを"その周辺部込み"で示してくれと何度言ったら...

引用返信 編集キー/
■19172 / inTopicNo.35)  Re[24]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (13回)-(2008/05/20(Tue) 18:16:15)
No19162 (επιστημη さん) に返信
>>...
>>のように,Dialog(アプリケーション起動時での窓に相当)でボタンを作り,押すことでなら,他のプログラムを起動させることができます.この差の違いがよくわかりません.
>
> だからぁ、うまいこといかん場合のコードを"その周辺部込み"で示してくれと何度言ったら...
 配慮が足りなくてすみません.申し訳ないです.
その,どこの部分のコードまでを載せれば適当なのか分りませんが,表示します.これはうまくいかない時のコードです.
 宜しくお願い致します.


using System;
using System.IO;
       ・
      (省略:using … の連続)
       ・  
using Office = Microsoft.Office.Core;


namespace AppImageCs3
{
/// <summary>
/// Form1 の概要の説明です。
/// </summary>
public class Form1 : System.Windows.Forms.Form
{

private System.Windows.Forms.OpenFileDialog openFileDialog1;
       ・
      (省略:private System … の連続)
       ・
    private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.PictureBox pictureBox2;
private IContainer components;

       ・
      (省略:各自目的の実行命令文)
       ・

private void pictureBox1_Click(object sender, EventArgs e)
{
     }

private void pictureBox2_Click(object sender, EventArgs e)
{ 
     }

     System.Diagnostics.Process.Start(@"C:\Users\田村研\Desktop\shoWindows - コピー\analysis\0214\\test3.exe");     ここの部分.ここの部分1行を加えるだけで「無効なトークン'('がクラス,
                                                               構造体またはインターフェイスのメンバ宣言で使用されています.」が表示される.

}//form1

}//namespace

引用返信 編集キー/
■19174 / inTopicNo.36)  Re[25]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 鶏唐揚 (146回)-(2008/05/20(Tue) 18:19:44)
2008/05/20(Tue) 18:52:41 編集(投稿者)
No19172 (初心者なハム さん) に返信
コードにインデントつけて綺麗にしてみましょう

namespace AppImageCs3
{
   /// <summary>
   /// Form1 の概要の説明です。
   /// </summary>
   public class Form1 : System.Windows.Forms.Form
   {

      //これは変数宣言 by鶏唐揚
      private System.Windows.Forms.OpenFileDialog openFileDialog1;
       ・
      (省略:private System … の連続)
       ・
   private System.Windows.Forms.PictureBox pictureBox1;
      private System.Windows.Forms.PictureBox pictureBox2;
      private IContainer components; 

       ・
      (省略:各自目的の実行命令文)
       ・

      //これはpictureBox1のクリックイベント by鶏唐揚
      private void pictureBox1_Click(object sender, EventArgs e)
      {
         //ここでpictureBox1をクリックしたときにやりたい処理書く by鶏唐揚
   }

      //これはpictureBox2のクリックイベント by鶏唐揚
      private void pictureBox2_Click(object sender, EventArgs e)
      {
         //ここでpictureBox2をクリックしたときにやりたい処理書く by鶏唐揚
   }

      //ここで処理やりたいの?でもどうやったらここに来れるのだろうか by鶏唐揚
   System.Diagnostics.Process.Start(@"C:\Users\田村研\Desktop\shoWindows - コピー\analysis\0214\\test3.exe");  

   }//form1
}//namespace


こうしてみると一目瞭然。System.Diagnostics.Process.Startが変な場所にいますよね
生涯PG希望さんの
>たとえば、(メソッドの内部ではなく)クラスの直下に
>System.Diagnostics.Process.Start(@"〜(省略)〜\aaa.exe");
>と記述すると、上記のコンパイルエラーが発生しますね。
>
>記述位置、間違っていませんか?
がビンゴです。

引用返信 編集キー/
■19426 / inTopicNo.37)  Re[26]: 他のプログラムを起動する方法に関する,コンパイ
□投稿者/ 初心者なハム (14回)-(2008/05/22(Thu) 23:46:49)
わんくま同盟の対処して下さった皆様:
 私ごときに,色々と対処して下さり,誠にありがとうございました.
おかげさまで解決することができました.一重に皆さまのおかげです.
 私にとっては,この手の掲示板を使用するのが初めてで,色々不慣れな所がございまして
皆様に色々とご迷惑をおかけしたことをこの場をお借りして,お詫び申し上げます.
 色々と対処をしてくださった皆様である はつねさん,出水さん,Hongliangさん,Azuleanさん
やじゅさん ,組込系の人さん,渋木宏明さん,επιστημηさん,銀閣寺在住さん,中村家さん
生涯PG希望さん,鶏唐揚さん (投稿者順)
 ありがとうございました.特に,より多く対処してくださった はつねさん,組込系の人さん,鶏唐揚さん
誠にありがとうございました.それと,επιστημηさん,こちらの不手際(その周辺部込み"で示してくれと),申し訳ないです.
 皆様,色々とありがとうございました.
解決済み
引用返信 編集キー/

<前の20件
トピック内ページ移動 / << 0 | 1 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -