トピック検索
1055 件のトピックが該当しました。
- Windows2008R2へのセットアップ - toki ( 2013/03/12 13:48:26 更新)
- 再起動後に公開アプリケーションが利用不可になる - Xen ( 2013/03/05 08:55:18 更新)
- スタートメニューがすぐ消えてしまいます。 - A-ちゃん ( 2013/02/08 13:21:04 更新)
- XenApp6.5 Receiver 複数アプリサーバへの接続 - ハムスター ( 2013/02/07 17:01:23 更新)
- XenApp6.5 公開アプリケーション起動時にWindowsログイン画面が表示される - Xen ( 2013/02/04 19:33:03 更新)
- Citrix Receiver 3.4のサーバアドレスを複数登録する方法について - Sora ( 2013/02/04 15:31:31 更新)
- MetaFrame3.0- 公開アプリケーションの起動できない「アプリケーションを使用できません。」 - kakouen ( 2013/01/23 13:43:00 更新)
- NetScalerVPXのログイン後の画面について - まりも ( 2013/01/17 19:33:35 更新)
- Auto Created Client Printerの用紙名取得がされない - たけやん ( 2013/01/16 19:27:22 更新)
- WINDOWS 8にインストールできない? - tweetyjap ( 2012/12/18 18:29:44 更新)
Windows2008R2へのセットアップ
Windows2008R2 に XenApp6.5をセットアップしようと
1.autorun.exe を実行
2.「XenAppサーバーのインストール」を選択
3.「64ビットバージョンのWindowsでの非互換性のため、プログラムまたは機能である
・・Setup.exe を開始または実行できません。ソフトウェア製造元に問い合わせて 64ビット
Winodws 互換バージョンが利用可能であるかどうか確認してください。」
のエラーが発生します。
XenApp6.5 は MyCtrixよりダウンロードしたものです。
何か原因がありますでしょうか?
1.autorun.exe を実行
2.「XenAppサーバーのインストール」を選択
3.「64ビットバージョンのWindowsでの非互換性のため、プログラムまたは機能である
・・Setup.exe を開始または実行できません。ソフトウェア製造元に問い合わせて 64ビット
Winodws 互換バージョンが利用可能であるかどうか確認してください。」
のエラーが発生します。
XenApp6.5 は MyCtrixよりダウンロードしたものです。
何か原因がありますでしょうか?
再起動後に公開アプリケーションが利用不可になる
XenApp6.5
WindowsServer2008R2
サーバ再起動後、公開アプリケーションを実行するとエラーとなります。
ログオン制御の「ログオンおよび再接続を許可する」を設定すると利用できるように
なりますが、再起動毎に設定しないと公開アプリケーションが利用できない状態です。
何か情報をご存知の方がいましたらご教授をお願いいたします。
WindowsServer2008R2
サーバ再起動後、公開アプリケーションを実行するとエラーとなります。
ログオン制御の「ログオンおよび再接続を許可する」を設定すると利用できるように
なりますが、再起動毎に設定しないと公開アプリケーションが利用できない状態です。
何か情報をご存知の方がいましたらご教授をお願いいたします。
RDS-calがインストールしたものと、
運用モードが違う場合同様の現象に遭遇した事があります。
購入 RDS-DeviceCAL
運用 RDS-UserCAL
運用モードが違う場合同様の現象に遭遇した事があります。
購入 RDS-DeviceCAL
運用 RDS-UserCAL
状況確認しました。
CAL購入はRDS-UserCAL、リモートデスクトップサービスのライセンスモードは
接続ユーザ数となっています。
CAL購入はRDS-UserCAL、リモートデスクトップサービスのライセンスモードは
接続ユーザ数となっています。
時間が経ちましたが、解決しました。
ポリシーのサーバヘルス監視テストをアラートのみに変更することで、
再起動後も公開アプリが起動できるようになりました。
ポリシーのサーバヘルス監視テストをアラートのみに変更することで、
再起動後も公開アプリが起動できるようになりました。
項目:Ticketing test
「サーバーへのログオンおよび接続を禁止」→「アラートのみ」
「サーバーへのログオンおよび接続を禁止」→「アラートのみ」
スタートメニューがすぐ消えてしまいます。
CitrixXenApp6.5 For Windows Server2008R2をインストールしている
アプリケーションサーバで、スタートボタンから表示するスタートメニューが
一秒経つか経たないかの時間で消えてしまいます。
このアプリケーションサーバに接続しているクライアントでも同じ現象が発生しています。
アプリケーションを探している間に消えてしまうので何度もスターとメニューを
開かなくてはなりません。
このスタートメニューを表示する時間はどこかで設定することができますか?
または、この現象の解決策があれば教えて頂ければと思います。
初めてシンクラを構築していますので、不足情報などありましたらご指摘ください。
よろしくお願いします。
アプリケーションサーバで、スタートボタンから表示するスタートメニューが
一秒経つか経たないかの時間で消えてしまいます。
このアプリケーションサーバに接続しているクライアントでも同じ現象が発生しています。
アプリケーションを探している間に消えてしまうので何度もスターとメニューを
開かなくてはなりません。
このスタートメニューを表示する時間はどこかで設定することができますか?
または、この現象の解決策があれば教えて頂ければと思います。
初めてシンクラを構築していますので、不足情報などありましたらご指摘ください。
よろしくお願いします。
質問の意味がよくわからないのですが、もしかしてPNAで接続してスタートメニューに表示される公開アプリケーションのショートカットのことを言われてますか?
基本的に公開アプリケーションのショートカットはネットワークが切断すれば削除される仕様だったハズです。
ちなみにWeb Interface側にショートカットの削除に関する設定があります。
基本的に公開アプリケーションのショートカットはネットワークが切断すれば削除される仕様だったハズです。
ちなみにWeb Interface側にショートカットの削除に関する設定があります。
返信頂きありがとうございます。
スタートメニューとは、通常、画面左下にあるWindowsマークをクリックした際に
表示されるメニューです。
コンピュータやコントロールパネル等が表示されるメニューです。
説明が伝わらず申し訳ありません。
よろしくお願いします。
スタートメニューとは、通常、画面左下にあるWindowsマークをクリックした際に
表示されるメニューです。
コンピュータやコントロールパネル等が表示されるメニューです。
説明が伝わらず申し訳ありません。
よろしくお願いします。
「CitrixXenApp6.5 For Windows Server2008R2をインストールしているアプリケーションサーバで」ということは、
もしかしてXenAppの接続関係無くサーバーローカルで出ているということでいいですか?
で、クライアントから公開デスクトップで接続すると同じような感じになるということでしょうか。
XenAppの接続関係無く出るようであれば、Citrixの設定値とかいう話では無い気がします。
もしかしてXenAppの接続関係無くサーバーローカルで出ているということでいいですか?
で、クライアントから公開デスクトップで接続すると同じような感じになるということでしょうか。
XenAppの接続関係無く出るようであれば、Citrixの設定値とかいう話では無い気がします。
返信ありがとうございます。
Citrix絡みのサービスを停止させ動作確認をしたところ、現象は改善されませんでした。
Reppa様が仰る通り、Citrixの設定値とは無関係かもしれません。
現在サーバ2台が稼動しており、今回質問させて頂いた対象のアプリケーションサーバと
同一環境で、Citrixがインストールされていないデータベースサーバがあるのですが、
そちらでは今回質問させてもらった現象が発生しないんです。
この2台の違いは、Citrixをインストールしているかしていないか、が大きな違いの一つで
したのでCitrixの環境を疑いました。
引き続き原因調査をしたいと思います。
どうもありがとうございました。
Citrix絡みのサービスを停止させ動作確認をしたところ、現象は改善されませんでした。
Reppa様が仰る通り、Citrixの設定値とは無関係かもしれません。
現在サーバ2台が稼動しており、今回質問させて頂いた対象のアプリケーションサーバと
同一環境で、Citrixがインストールされていないデータベースサーバがあるのですが、
そちらでは今回質問させてもらった現象が発生しないんです。
この2台の違いは、Citrixをインストールしているかしていないか、が大きな違いの一つで
したのでCitrixの環境を疑いました。
引き続き原因調査をしたいと思います。
どうもありがとうございました。
XenApp6.5 Receiver 複数アプリサーバへの接続
初めてのケースで困っています。
異なるアプリケーションを2台のXenAppサーバにインストールします。
WebInterfaceでは、URLにそれぞれのサーバ名を記したショートカットを用意すれば良いのですが、
XenApp Receiver の場合、サーバ変更しなければなりません。
うまく切り替える方法は無いでしょうか?
異なるアプリケーションを2台のXenAppサーバにインストールします。
WebInterfaceでは、URLにそれぞれのサーバ名を記したショートカットを用意すれば良いのですが、
XenApp Receiver の場合、サーバ変更しなければなりません。
うまく切り替える方法は無いでしょうか?
最近同じようなことを答えたと思うのですが、1度に1サイトしか接続出来ない仕様です。
ただ、1回接続したのであればリストに表示されませんでしたっけ?
ただ、1回接続したのであればリストに表示されませんでしたっけ?
リストに残ればそれを選択してもらえますね。
確認してみます。
確認してみます。
XenApp6.5 公開アプリケーション起動時にWindowsログイン画面が表示される
XenApp6.5
WindowsServer2008R2 の環境で、
WEBインターフェースで公開アプリケーションを設定しています。
パスワードが空白のドメインユーザを利用していますが、
公開アプリケーション起動時にWindows認証画面が表示されます。
認証画面が表示されないようにする方法はないか探しています。
何か情報をご存知の方がいましたらご教授をお願いいたします。
WindowsServer2008R2 の環境で、
WEBインターフェースで公開アプリケーションを設定しています。
パスワードが空白のドメインユーザを利用していますが、
公開アプリケーション起動時にWindows認証画面が表示されます。
認証画面が表示されないようにする方法はないか探しています。
何か情報をご存知の方がいましたらご教授をお願いいたします。
それは逆にパスワードが空白じゃないと出ないということでしょうか。
あと、認証は指定ですか?パススルーですか?
あと、認証は指定ですか?パススルーですか?
パスワードが0文字の場合、この様な動作になったと思います。
Win2008サーバにリモートでログオンする際、
そもそも0文字以上のパスワードが必須だったと思います。
Win2008サーバにリモートでログオンする際、
そもそも0文字以上のパスワードが必須だったと思います。
認証は指定、ドメインのポリシーとして0文字も許容しています。
仕様のハズです。そういう記載もされていたと思います。
ありがとうございます。
やはり今回の内容は仕様でした。
セキュリティ面を含めてパスワードは設定する運用とするようにします。
やはり今回の内容は仕様でした。
セキュリティ面を含めてパスワードは設定する運用とするようにします。
ユーザー認証させないのなら、各種制約もありますが、
匿名ユーザーという方法も一応ありますね。
使ったことは有りませんが・・・。
匿名ユーザーという方法も一応ありますね。
使ったことは有りませんが・・・。
まず、パスワードなしでの運用ではセキュリティ面に不安を感じます。
一般的に考えてもパスワードが空白で運用することを推奨されるベンダーはないはずです。
0文字のパスワードとは別に、ログインはReceiver(Web)をインストールしてブラウザから接続しようとされていますか?
一般的に考えてもパスワードが空白で運用することを推奨されるベンダーはないはずです。
0文字のパスワードとは別に、ログインはReceiver(Web)をインストールしてブラウザから接続しようとされていますか?
Citrix Receiver 3.4のサーバアドレスを複数登録する方法について
Citrix Receiverのインストール後、
「Citrix Receiverのアイコン」→「バージョン情報」→「Online Plug-in設定」→
「サーバーの変更」から「Citrix Receiver - サーバーの変更」画面を表示するとサーバーアドレスが入力できますが、
ここに複数のサーバーアドレスを手動入力以外で登録することは可能でしょうか。
背景として、管理者ユーザーのみ本番と開発用のServiceサイトにアクセスが出来るのですが、
インストール時には本番用のサーバーアドレスはSERVER_LOCATIONオプションで指定して、
一般ユーザーには開発用のサーバーアドレスを公開しないようにしたいです。
Receiverインストール後に管理者ユーザーのみシステム的にサーバーアドレスを
複数登録できる方法が無いかを探しています。
また、インストール時にSERVER_LOCATIONオプション等で複数のサーバーアドレスを指定することは可能でしょうか。
インストール後にシステム的にアドレスが複数登録出来ない場合、
インストール時に複数のアドレスを登録する方法で提案することも考えています。
ご教示よろしくお願い致します。
なお、私の環境は以下となります。
XenApp 6.5
WebInterface 5.4
Citrix Receiver Enterprise 3.4
クライアントOS:Windows XP SP3
「Citrix Receiverのアイコン」→「バージョン情報」→「Online Plug-in設定」→
「サーバーの変更」から「Citrix Receiver - サーバーの変更」画面を表示するとサーバーアドレスが入力できますが、
ここに複数のサーバーアドレスを手動入力以外で登録することは可能でしょうか。
背景として、管理者ユーザーのみ本番と開発用のServiceサイトにアクセスが出来るのですが、
インストール時には本番用のサーバーアドレスはSERVER_LOCATIONオプションで指定して、
一般ユーザーには開発用のサーバーアドレスを公開しないようにしたいです。
Receiverインストール後に管理者ユーザーのみシステム的にサーバーアドレスを
複数登録できる方法が無いかを探しています。
また、インストール時にSERVER_LOCATIONオプション等で複数のサーバーアドレスを指定することは可能でしょうか。
インストール後にシステム的にアドレスが複数登録出来ない場合、
インストール時に複数のアドレスを登録する方法で提案することも考えています。
ご教示よろしくお願い致します。
なお、私の環境は以下となります。
XenApp 6.5
WebInterface 5.4
Citrix Receiver Enterprise 3.4
クライアントOS:Windows XP SP3
URLの複数登録はできなかったと思います。
ただし、この設定は接続元端末にログオンするユーザーアカウントごとに設定可能なので、
接続元端末のログオンユーザーで切り替える方法が検討できると思います。
もしくは、URLの切り替えではなく、公開アプリケーションのユーザー権限で制御する事を検討する方が良いのではと思います。
ただし、この設定は接続元端末にログオンするユーザーアカウントごとに設定可能なので、
接続元端末のログオンユーザーで切り替える方法が検討できると思います。
もしくは、URLの切り替えではなく、公開アプリケーションのユーザー権限で制御する事を検討する方が良いのではと思います。
Plug-inの接続は1サイト+αでバックアップURL 1サイトと考えた方がいいかもしれません。
複数サイトで運用したいならブラウザのブックマークからサイトに跳ぶという方が楽だと思います。
複数サイトで運用したいならブラウザのブックマークからサイトに跳ぶという方が楽だと思います。
URLは1サイトのみの登録となります。
ブラウザからの接続であれば、ブックマークのみで済むので運用上、ハードルは低く導入しやすいものだと思います。
ブラウザからの接続であれば、ブックマークのみで済むので運用上、ハードルは低く導入しやすいものだと思います。
MetaFrame3.0- 公開アプリケーションの起動できない「アプリケーションを使用できません。」
Citrix初心者です。
公開アプリケーションを起動できません。
何か情報をご存知の方がいましたらご教授をお願いいたします。
●やりたいこと
Citrix サーバーPCにて公開アプリケーション(メモ帳)を登録する。
クライアントPCにてInternet Explorerを起動してCitrixサーバーのWeb Interface(http://(IPアドレス)/Citrix/MetaFrame)に接続・ログインする。
(ログインするユーザーはMetaFrame管理者の権限を持つユーザー、ファームに対してフルコントロールの権限を設定)
クライアントPCから公開アプリケーション(メモ帳)を起動する。
●環境
サーバーOS :Windows Server 2003 Enterprise Edition with SP1 (x86)
クライアントOS : Windows 7 Ultimate (x86) , Windows XP Professional SP3 (x86)
インストールソフト:(サーバーPC) Citrix MetaFrame Presentation Server for Windows
MetaFrame Presentation Server 管理コンソール 3.0
MetaFrame Access Suite 管理コンソール
(クライアントPC) Citrix Receiver for Windows
●現在の状況
CitrixサーバーのWeb Interfaceにてログインは可能。
公開アプリケーション(メモ帳)のアイコンは表示されます。
公開アプリケーション(メモ帳)を起動しようとする(クリックする)と、
「アプリケーションを使用できません。後でもう一度試してください。」
と表示されて、メモ帳を起動することができない。
公開アプリケーションを起動できません。
何か情報をご存知の方がいましたらご教授をお願いいたします。
●やりたいこと
Citrix サーバーPCにて公開アプリケーション(メモ帳)を登録する。
クライアントPCにてInternet Explorerを起動してCitrixサーバーのWeb Interface(http://(IPアドレス)/Citrix/MetaFrame)に接続・ログインする。
(ログインするユーザーはMetaFrame管理者の権限を持つユーザー、ファームに対してフルコントロールの権限を設定)
クライアントPCから公開アプリケーション(メモ帳)を起動する。
●環境
サーバーOS :Windows Server 2003 Enterprise Edition with SP1 (x86)
クライアントOS : Windows 7 Ultimate (x86) , Windows XP Professional SP3 (x86)
インストールソフト:(サーバーPC) Citrix MetaFrame Presentation Server for Windows
MetaFrame Presentation Server 管理コンソール 3.0
MetaFrame Access Suite 管理コンソール
(クライアントPC) Citrix Receiver for Windows
●現在の状況
CitrixサーバーのWeb Interfaceにてログインは可能。
公開アプリケーション(メモ帳)のアイコンは表示されます。
公開アプリケーション(メモ帳)を起動しようとする(クリックする)と、
「アプリケーションを使用できません。後でもう一度試してください。」
と表示されて、メモ帳を起動することができない。
MPS3.0とReceiverは互換性無いので厳しい気がしますが、
サーバー上でも同じ操作をしてみれば接続するクライアントの問題ではなくなると思います。
あと、昔のバージョンのICAクライアントを引っ張って繋げてみるとか。
サーバー上でも同じ操作をしてみれば接続するクライアントの問題ではなくなると思います。
あと、昔のバージョンのICAクライアントを引っ張って繋げてみるとか。
Windows7を利用するためのXenApp環境は
Citrix社より下記環境でのみ正式サポートされています。
1:XenAppサーバ
Citrix Presentation Server for Windows 4.5 + (HRP05 or HRP06)
Citrix XenApp 5
Citrix XenApp 6(ただし、ProgramNeighborhoodからの接続は不可)
2:Web Interfaceサーバ
Web Interface for Windows 5.2.x
Web Interface for Windows 5.3
3:クライアントソフト
ICAクライアント(Citrix Online Plug-in 11.2以降)
Citrix社より下記環境でのみ正式サポートされています。
1:XenAppサーバ
Citrix Presentation Server for Windows 4.5 + (HRP05 or HRP06)
Citrix XenApp 5
Citrix XenApp 6(ただし、ProgramNeighborhoodからの接続は不可)
2:Web Interfaceサーバ
Web Interface for Windows 5.2.x
Web Interface for Windows 5.3
3:クライアントソフト
ICAクライアント(Citrix Online Plug-in 11.2以降)
もうみてないと思いますけど、一応。
Your app is not available. Try again later. でCitrixのフォーラムを検索すると対応がワンサカでますよ!
Your app is not available. Try again later. でCitrixのフォーラムを検索すると対応がワンサカでますよ!
NetScalerVPXのログイン後の画面について
NetScalerVPXを構築してAccess Gatewayを設定後、
PCからログインしたところ、「Access Gateway Plug-inのインストール」を促すメッセージが表示されます。
PCには、CitrixReceiverをインストール済みなのですが、
「Access Gateway Plug-inのインストール」画面を表示しないようにする設定をご存知の方いましたら、ご教示ください。
よろしくお願いします。
PCからログインしたところ、「Access Gateway Plug-inのインストール」を促すメッセージが表示されます。
PCには、CitrixReceiverをインストール済みなのですが、
「Access Gateway Plug-inのインストール」画面を表示しないようにする設定をご存知の方いましたら、ご教示ください。
よろしくお願いします。
「Access Gateway Plug-inのインストール」は必要と思います。
AGクライアントはSSL通信を確立するために、必須では?
CitrixReceiverで通信するのは、その後になります。
AGクライアントはSSL通信を確立するために、必須では?
CitrixReceiverで通信するのは、その後になります。
Auto Created Client Printerの用紙名取得がされない
環境:
Metaサーバー
OS:Windows2008 R2 64Bit
クライアント
OS:WindowsXP
CitrixReceiver 3.1.0.64091
Citrix XenApp6.0を使用して、.NET 2010 VB で作成した公開アプリケーションで印刷を
行っています。Auto Created Client Printerでユニバーサルプリンタドライバが
使用されているプリンタをパラメータに以下のコードを実行させたところ
「①用紙名の数を取得」は問題なくできる。
「②用紙名(1メンバー64文字で用紙名数分)を取得」はすべて空白が取得されます。
「③用紙サイズ番号の数を取得」は問題なくできる。
「④用紙サイズ番号(配列)を取得」はすべてゼロが取得されます。
一方、サーバにインストールした別のプリンタ(ベンダー製の非ネイティブドライバ使用)を
指定した場合は問題なくすべての情報が取得されます。
その上、この状態でも該当のAuto Created Client Printerを「デバイスとプリンター」で
右クリックし印刷設定を選択→表示される印刷設定画面で用紙/品質タブを選択→
詳細ボタン押下→用紙サイズドロップダウンをクリックすると、目的の用紙サイズが一覧表示
されるので取得する方法はあると思いますが、その方法がわかりません。
Auto Created Client Printerでの上記情報の取得方法をご存知の方いらっしゃいましたら
御教授お願い致します。
<以下はVBコードの問題部分です>
'用紙名のリストを取得
Declare Function DeviceCapabilitiesNames Lib "winspool.drv" Alias "DeviceCapabilitiesA" ( _
ByVal pDevice As String, _
ByVal pPort As String, _
ByVal fwCapability As Short, _
ByVal pOutput As String, _
ByVal pDevMode As IntPtr) As Integer
'用紙番号のリストを取得
Declare Function DeviceCapabilitiesPapers Lib "winspool.drv" Alias "DeviceCapabilitiesA" ( _
ByVal pDevice As String, _
ByVal pPort As String, _
ByVal fwCapability As Short, _
ByVal pOutput() As Short, _
ByVal pDevMode As IntPtr) As Integer
Const DC_PAPERS As Integer = 2
Const DC_PAPERNAMES As Integer = 16
'以下のメソッドをDevMode構造体から取得した下記パラメータで実行したが・・・
'PrinterName : "セッション 3 の (NTTDSPC079 からの) EPSON VP-4300 ESC/P"
'PortName : "Client:3:EPSON VP-4300 ESC/P"
Private Function GetPaperNumber(ByVal PrinterName As String, ByVal PortName As String) As Short
Dim idx As Integer
Dim hEncoding As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift-JIS")
Dim PaperNamesCount As Integer
Dim svPrinterName As String = PrinterName
'①用紙名の数を取得
PaperNamesCount = DeviceCapabilitiesNames(PrinterName, PortName, DC_PAPERNAMES, Nothing, IntPtr.Zero)
Dim PaperNames As String = New String(" "c, PaperNamesCount * 64)
'②用紙名(1メンバー64文字で用紙名数分)を取得
Call DeviceCapabilitiesNames(PrinterName, PortName, DC_PAPERNAMES, PaperNames, IntPtr.Zero)
PrinterName = svPrinterName
Dim paperNumberCount As Integer
'③用紙サイズ番号の数を取得
paperNumberCount = DeviceCapabilitiesPapers(PrinterName, PortName, DC_PAPERS, Nothing, IntPtr.Zero)
Dim paperNumbers As Short()
ReDim paperNumbers(paperNumberCount - 1)
'④用紙サイズ番号(配列)を取得
Call DeviceCapabilitiesPapers(PrinterName, PortName, DC_PAPERS, paperNumbers, IntPtr.Zero)
For j As Integer = 0 To PaperNamesCount - 1
Dim paper As String = hEncoding.GetString(hEncoding.GetBytes(PaperNames), j * 64, 64)
PrinterInfo.Rows.Add()
idx = PrinterInfo.Rows.Count - 1
PrinterInfo.Rows(idx).Cells(0).Value = j.ToString("000")
PrinterInfo.Rows(idx).Cells(1).Value = paperNumbers(j).ToString("000")
PrinterInfo.Rows(idx).Cells(2).Value = paper.Trim()
Next
Return paperNumberCount
End Function
Metaサーバー
OS:Windows2008 R2 64Bit
クライアント
OS:WindowsXP
CitrixReceiver 3.1.0.64091
Citrix XenApp6.0を使用して、.NET 2010 VB で作成した公開アプリケーションで印刷を
行っています。Auto Created Client Printerでユニバーサルプリンタドライバが
使用されているプリンタをパラメータに以下のコードを実行させたところ
「①用紙名の数を取得」は問題なくできる。
「②用紙名(1メンバー64文字で用紙名数分)を取得」はすべて空白が取得されます。
「③用紙サイズ番号の数を取得」は問題なくできる。
「④用紙サイズ番号(配列)を取得」はすべてゼロが取得されます。
一方、サーバにインストールした別のプリンタ(ベンダー製の非ネイティブドライバ使用)を
指定した場合は問題なくすべての情報が取得されます。
その上、この状態でも該当のAuto Created Client Printerを「デバイスとプリンター」で
右クリックし印刷設定を選択→表示される印刷設定画面で用紙/品質タブを選択→
詳細ボタン押下→用紙サイズドロップダウンをクリックすると、目的の用紙サイズが一覧表示
されるので取得する方法はあると思いますが、その方法がわかりません。
Auto Created Client Printerでの上記情報の取得方法をご存知の方いらっしゃいましたら
御教授お願い致します。
<以下はVBコードの問題部分です>
'用紙名のリストを取得
Declare Function DeviceCapabilitiesNames Lib "winspool.drv" Alias "DeviceCapabilitiesA" ( _
ByVal pDevice As String, _
ByVal pPort As String, _
ByVal fwCapability As Short, _
ByVal pOutput As String, _
ByVal pDevMode As IntPtr) As Integer
'用紙番号のリストを取得
Declare Function DeviceCapabilitiesPapers Lib "winspool.drv" Alias "DeviceCapabilitiesA" ( _
ByVal pDevice As String, _
ByVal pPort As String, _
ByVal fwCapability As Short, _
ByVal pOutput() As Short, _
ByVal pDevMode As IntPtr) As Integer
Const DC_PAPERS As Integer = 2
Const DC_PAPERNAMES As Integer = 16
'以下のメソッドをDevMode構造体から取得した下記パラメータで実行したが・・・
'PrinterName : "セッション 3 の (NTTDSPC079 からの) EPSON VP-4300 ESC/P"
'PortName : "Client:3:EPSON VP-4300 ESC/P"
Private Function GetPaperNumber(ByVal PrinterName As String, ByVal PortName As String) As Short
Dim idx As Integer
Dim hEncoding As System.Text.Encoding = System.Text.Encoding.GetEncoding("Shift-JIS")
Dim PaperNamesCount As Integer
Dim svPrinterName As String = PrinterName
'①用紙名の数を取得
PaperNamesCount = DeviceCapabilitiesNames(PrinterName, PortName, DC_PAPERNAMES, Nothing, IntPtr.Zero)
Dim PaperNames As String = New String(" "c, PaperNamesCount * 64)
'②用紙名(1メンバー64文字で用紙名数分)を取得
Call DeviceCapabilitiesNames(PrinterName, PortName, DC_PAPERNAMES, PaperNames, IntPtr.Zero)
PrinterName = svPrinterName
Dim paperNumberCount As Integer
'③用紙サイズ番号の数を取得
paperNumberCount = DeviceCapabilitiesPapers(PrinterName, PortName, DC_PAPERS, Nothing, IntPtr.Zero)
Dim paperNumbers As Short()
ReDim paperNumbers(paperNumberCount - 1)
'④用紙サイズ番号(配列)を取得
Call DeviceCapabilitiesPapers(PrinterName, PortName, DC_PAPERS, paperNumbers, IntPtr.Zero)
For j As Integer = 0 To PaperNamesCount - 1
Dim paper As String = hEncoding.GetString(hEncoding.GetBytes(PaperNames), j * 64, 64)
PrinterInfo.Rows.Add()
idx = PrinterInfo.Rows.Count - 1
PrinterInfo.Rows(idx).Cells(0).Value = j.ToString("000")
PrinterInfo.Rows(idx).Cells(1).Value = paperNumbers(j).ToString("000")
PrinterInfo.Rows(idx).Cells(2).Value = paper.Trim()
Next
Return paperNumberCount
End Function
解決しました。自己レスです。
DeviceCapabilities呼び出しの際、PrinterNameとPortName をsjisに変換し、
null(0)で終了する(c/c++で使用する)文字列にしてから、実行すると期待していた
結果が返されました。
日本版のWindows系でプリンタ名に日本語が含まれる場合にだけ発生する
現象のようで、DeviceCapabilitiesの呼出しと実行結果の文字列はsjis文字で
null(0)にて終了する形式で行うようです。日本版citrixではAuto Created Client Printerの
プリンタ名に日本語が入るので要注意です。
(こんなことで3~4日も悩むなんて・・)
これでプリンタ用紙選択を実行時に行えるようになり、用紙サイズ別のプリンタを
あらかじめ作っておいてそれを選択といったことをせずに済むようになりました。
ご覧になったみなさんありがとうございました。
DeviceCapabilities呼び出しの際、PrinterNameとPortName をsjisに変換し、
null(0)で終了する(c/c++で使用する)文字列にしてから、実行すると期待していた
結果が返されました。
日本版のWindows系でプリンタ名に日本語が含まれる場合にだけ発生する
現象のようで、DeviceCapabilitiesの呼出しと実行結果の文字列はsjis文字で
null(0)にて終了する形式で行うようです。日本版citrixではAuto Created Client Printerの
プリンタ名に日本語が入るので要注意です。
(こんなことで3~4日も悩むなんて・・)
これでプリンタ用紙選択を実行時に行えるようになり、用紙サイズ別のプリンタを
あらかじめ作っておいてそれを選択といったことをせずに済むようになりました。
ご覧になったみなさんありがとうございました。
WINDOWS 8にインストールできない?
こんばんは。
何度か投稿しているtweetyjapです。
皆様のお力をお借りしたいのですが。
DesktopStudioは何とか乗り切ったのですが、新たにWINDOWS 8のOSをインストールし
Agentをインストールしようとしたのですが、「このオペレーティングシステムは・・・」で、インストールできません。
WIN8は、まだサポートされていないのでしょうか。
ちなみにXenDesktopのバージョンは5.6です。
何度か投稿しているtweetyjapです。
皆様のお力をお借りしたいのですが。
DesktopStudioは何とか乗り切ったのですが、新たにWINDOWS 8のOSをインストールし
Agentをインストールしようとしたのですが、「このオペレーティングシステムは・・・」で、インストールできません。
WIN8は、まだサポートされていないのでしょうか。
ちなみにXenDesktopのバージョンは5.6です。
AgentってReceiverのことですか?
Windows8対応は3.3以降です。
Windows8対応は3.3以降です。
Desktop AgentのWin8対応は次期バージョンですね。
Reppaさん。
レスありがとうございます。
WIN7で動いていたので、Versionまで確認していませんでした。
早速、最新版をインストールしてみます。
MTさん。
レスありがとうございます。
OSが変わると悲劇ですww
最新バージョンを常に✔しなければなりませんね。
レスありがとうございます。
OSが変わると悲劇ですww
最新バージョンを常に✔しなければなりませんね。
Powerful & Beautiful
力強く、美しいシステムを。