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

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

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■17087  Re[5]: テキスト抽出について
□投稿者/ 774RR -(2008/04/16(Wed) 15:24:36)
    つgrep
記事No.17067 のレス / END /過去ログ34より / 関連記事表示
削除チェック/

■17088  Re[8]: コンソールアプリケーションでメッセージボックスを出すには
□投稿者/ ぽぴ王子 -(2008/04/16(Wed) 15:24:51)
>
    No17083 (ミケ さん) に返信

    > at 14:22 /interactive "○○.exe" /k
    > +
    > Console.WriteLine("終了しました。閉じてください")'----■方法3
    >
    > を実行してみましたが、コマンドプロンプトは一瞬しか出てくれませんでした。
    > 指定方法が間違っておりますでしょうか。。。?

    これだと Console.WriteLine でコンソールに出力して、出力を待たずに
    終了してしまいますよね。なので一瞬しか出なくて正解です。
    MessageBox.Show を使って一旦処理を止めないといけなくて、そうすると
    自動実行ではインタラクティブに表示することは無理だ!じゃあ at コマンド
    に /interactive オプションをつけるしか…!
    という流れだったはずです。

    で、/interactive スイッチをつけなければ、メッセージボックスを表示させる
    といったインタラクティブな、ユーザーの操作を必要とするような処理はできない
    わけで、API を利用しても無理と書いたのはそのためです。

    逆に言えば、/interactive スイッチをつければできると思います。


    > コンソールファイルはウィンドウを持たないので、そのままメッセージを出せないが、開いている画面(Access)
    > のWindowの番号をFindWindowで指定すると、Accessからメッセージが上がったように見える、という理解は
    > 間違っておりますでしょうか。

    うーん、Access からメッセージが上がったように見えるというか、Access を
    親としてメッセージボックスを出したい、ということですね。
    まぁなんとかできるとは思いますが、あまりお勧めはしないかなぁ。

    仕様的にどうかという点では774RRさんに同意です。どちらかといえば Access
    内部でなんとかすべき話のような気もするし。VBA とかで。


    あとは /interactive スイッチをつけてインタラクティブに表示させるなら
    コンソールアプリケーションじゃなくて、普通のウィンドウアプリケーションに
    するのがいいかも、と思います。
    …っとフォームを出さずに実行させるのって VB だとどうするんだっけ。
    なんか調べてみたけどよくわかんなかったです。
    ウィンドウアプリケーションにして、ウィンドウを出さずに動作させれば
    コマンドプロンプトも表示されなくて(゚Д゚)ウマーだと思ったんだけど。
記事No.17070 のレス /過去ログ35より / 関連記事表示
削除チェック/

■43432  VSのアイコンがおかしい
□投稿者/ める -(2009/11/10(Tue) 14:58:20)

    分類:[C#] 

    お世話になってます。
    VS2005なのですが、ソリューションエクスプローラーの
    アイコンが一部おかしくなっています。
    Formのクラスにもかかわらず、
    UserControlのアイコンになってたり・・・

    前にツールボックスのアイコンがおかしくなった時は
    右クリックのリセットを選んだら直ったのですが・・・
    プロジェクトのファイルをどれか削除すれば直るのでしょうか?

    わかる方いましたら宜しくお願いします。

親記事 /過去ログ74より / 関連記事表示
削除チェック/

■83270  ASP .NET Webアプリケーションから実行ファイルを動
□投稿者/ ごう -(2017/03/16(Thu) 09:06:11)

    分類:[ASP.NET (C#)] 

    サーバOS:Windows Server 2012
    クライアントOS:Windows7または10

    ASP .NET(C#)で動いているWebアプリケーションがあります。
    ここで、ボタンクリックをトリガーとし、サーバ内の実行ファイル(exe形式)を実行させるようにしたいです。

    当方でもProccessクラスを使って試してみたのですが、
    アクセス権の問題?のようで、実行ファイルを起動させることができませんでした。

    参考としたページ
    https://social.msdn.microsoft.com/Forums/ja-JP/c74f9d88-8abd-4526-9d7c-d3c110da9d43/aspexe?forum=aspnetja

    このような処理を実現したい場合、どの様な点に注意したらよいか教えてください。
親記事 /過去ログ142より / 関連記事表示
削除チェック/

■83287  Re[1]: ASP .NET Webアプリケーションから実行ファイルを動
□投稿者/ WebSurfer -(2017/03/16(Thu) 12:39:47)
    No83270 (ごう さん) に返信

    Web Forms アプリですか? Visual Studio, .NET のバージョンは何ですか?

    > サーバ内の実行ファイル(exe形式)を実行させるようにしたいです。

    具体的にどういう exe ですか?

    > 当方でもProccessクラスを使って試してみたのですが、
    > アクセス権の問題?のようで、実行ファイルを起動させることができませんでした。

    開発環境で IIS Express 上で Web アプリを動かすした場合どうなりますか?

    アクセス権の問題とはどういう根拠でそう思われたのですか?

    起動させることができなかったというのは、何を見てどういう判断をして確認されたの
    ですか? 例外などがスローされるならどういう例外か分かりませんか?

    なんとなく、プロセスがユーザー対話モードで実行されていないのに UI を表示しよう
    として失敗したという気がするのですが(気がするだけで、もちろん確証などはありま
    せんが)、そのあたりは問題ないですか?

    ユーザー対話モードで実行されていない場合 Environment.UserInteractive プロパティ
    は false になるので、それで確認できると思います。(ちなみに IIS のワーカープロ
    セスでは false になります)

    > このような処理を実現したい場合、どの様な点に注意したらよいか教えてください。

    開発環境では IIS Express ではなくローカル IIS を使って、サーバーにデプロイする
    前に十分なテストを行ってください。

    そして開発環境で問題が発生して原因が分からなければ、そして問題を再現するのに不要
    なコードはどんどん削っていって、問題を再現するのに要最低限のコードにした簡単な
    サンプルを作ってください。その過程で原因が見つかって自己解決できること尾が多いは
    ずです。見つからなくても、そのコードをアップすれば質問者の方でも検証ができるので、
    助言が得やすいと思います。  
記事No.83270 のレス /過去ログ142より / 関連記事表示
削除チェック/

■83316  Re[2]: ASP .NET Webアプリケーションから実行ファイルを動
□投稿者/ ???? -(2017/03/17(Fri) 08:44:25)
    No83287 (WebSurfer さん) に返信
    > Web Forms アプリですか? Visual Studio, .NET のバージョンは何ですか?

    Webフォームアプリです。
    既存のパッケージシステムをカスタマイズしています。
    (メソッド等のコードを既存のシステムに管理者モードでログインして記述する)形式です。
    Visual Studioは使用していません。

    .NET のバージョンは4.5です。



    >>サーバ内の実行ファイル(exe形式)を実行させるようにしたいです。
    >
    > 具体的にどういう exe ですか?

    サーバ上でファイルを生成するexeです。(自作)


    > 開発環境で IIS Express 上で Web アプリを動かすした場合どうなりますか?

    開発環境=サーバになります。



    > アクセス権の問題とはどういう根拠でそう思われたのですか?
    >
    > 起動させることができなかったというのは、何を見てどういう判断をして確認されたの
    > ですか? 例外などがスローされるならどういう例外か分かりませんか?

    サーバ側でexeに対応するプロセスが見つからず、
    exeが出力するはずのファイル、ログも書き込まれなかったため
    「起動させることができなかった」と判断しています。
      
記事No.83270 のレス /過去ログ142より / 関連記事表示
削除チェック/

■83318  Re[3]: ASP .NET Webアプリケーションから実行ファイルを動
□投稿者/ 魔界の仮面弁士 -(2017/03/17(Fri) 10:04:34)
    No83316 (???? さん) に返信

    投稿者名が化けていますが、ごうさんでしょうか。

    Firefox を使っているのだとしたら、IE や Chrome などを
    使うようにすると、投稿者名が化けずに済みますよ。

    # Child Tree 側の cookie 処理を見直せば対処できるようですが
    # 現状でそれは望めないので…。


    > exeが出力するはずのファイル、ログも書き込まれなかったため
    > 「起動させることができなかった」と判断しています。

    ログと言うのはファイルに対してでしょうか、それとも Windows イベントログでしょうか。

    ファイルを出力するフォルダに対して、NTFS アクセス制御リスト (ACL) にて
    書き込みアクセス権を確保してあるかを確認してみて下さい。
    もちろん、exe ファイル自身に対する実行と読み取り許可も必要ですし、
    レジストリを利用しているなら、レジストリエントリへのアクセス権も必要です。

    スレッドを実行しているアカウントは、下記で取得できます。
    System.Security.Principal.WindowsIdentity.GetCurrent().Name

    アプリケーションプールが ApplicationPoolIdentity に割り当てられている場合は
    "IIS APPPOOL\アプリケーションプール名" が返されると思います。


    特定の実行アカウントに対して許可を与えるのか、
    グループに対して許可を与えるのかはお好みで。
    http://blog.shibayan.jp/entry/20150127/1422369253
    https://social.technet.microsoft.com/Forums/ja-JP/a96378ce-cae6-41c9-8503-b1a58316e29c/iusr?forum=iis7ja
記事No.83270 のレス /過去ログ142より / 関連記事表示
削除チェック/

■83323  Re[3]: ASP .NET Webアプリケーションから実行ファイルを動
□投稿者/ WebSurfer -(2017/03/17(Fri) 11:34:45)
    No83316 (???? さん) に返信

    「ごう」さん=「????」さんと理解して・・・

    先の私のレスの質問、

    > なんとなく、プロセスがユーザー対話モードで実行されていないのに UI を表示しよう
    > として失敗したという気がするのですが(気がするだけで、もちろん確証などはありま
    > せんが)、そのあたりは問題ないですか?

    に回答していただいてませんが、そこは問題ないと理解していいのですか? もし、問題
    があればまずそれを解決しないと先に進めませんが・・・


    上記の点は問題ないとすると、質問者さんが想像したようにアクセス権の問題があると思
    います。 exe というのは、

    > サーバ上でファイルを生成するexeです。(自作)

    とのことですから、ファイルを生成するフォルダに対してワーカープロセスが書き込み権
    限を持ってないと失敗するはずです。

    権限を与える方法は以下の記事の「ファイル アクセス」のセクションを見てください。

    How To: ASP.NET で Network Service アカウントを使用してリソースにアクセスする方法
    https://msdn.microsoft.com/ja-jp/library/ms998320.aspx

    上の記事は少々古いので「Network Service アカウント」となっていますが、IIS7.5 以降
    はデフォルトで「アプリケーション プール ID」になっています。詳しくは以下の記事を見
    てください。

    アプリケーション プール ID
    https://technet.microsoft.com/ja-jp/library/ee886292.aspx

    (IIS の設定を変えれば NetworkService、LocalSystem、特定のユーザーアカウント等に
    できますので、質問者さんの環境で IIS Manager を使って、当該アプリケーションプール
    の詳細設定を見て調べてください)


    フォルダが Web サーバーとは別マシン(例:ファイルサーバーの共有フォルダ)にある場
    合はちょっと問題かと思います。

    Web サーバーもファイルサーバーも Active Directory ドメイン環境下にある場合は、上に
    紹介した記事に書いてあるように、NetworkService やアプリケーションプール ID はネッ
    トワーククレデンシャルを持っているので、コンピューターアカウントを使用してネットワ
    ークリソースにアクセスすることができます。


    ワークグループ環境では、ネットワークリソースに NetworkService やアプリケーションプ
    ール ID を使ってアクセスするのは無理っぽいです。

    Process.Start で起動する別プロセスに有効かどうかわかりませんが、ASP.NET 偽装を試し
    てみてはいかがでしょう?

    他には、これも試したわけではないのでうまくいくかどうかわかりませんが、以下のような
    方法もあるそうです。

    別ユーザーで外部アプリケーションを起動する
    http://dobon.net/vb/dotnet/process/startwithusername.html
記事No.83270 のレス /過去ログ142より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -