Quantcast
Channel: Windows Mobile – .NET Compact Framework (VB, C#) フォーラム
Viewing all 80 articles
Browse latest View live

.NET Compact Framework で時刻を設定する

$
0
0
アプリケーション内でシステムの時刻を設定する方法を探しています。
WindowsXP(C# 2005使用)では
Microsoft.VisualBasic.DateAndTime.TimeOfDay = NewTime;
で簡単に時刻の設定が出来たのですが、
.NET Compact Framework では Microsoft.VisualBasic の部分がエラーになってしまいます。
時刻を設定するにはどうすれば良いのでしょうか。

.NET Compact Framework でWindows Mobile 6.5スタイルのコントロールを扱う方法

$
0
0

こんばんは、CH3COOH(酢酸)です。

Windows Mobile 6.5.3端末上で.NET Compact Frameworkから、
WM6.5スタイル(という表現が正確かは分かりませんが)の標準コントロールを扱う方法はないでしょうか?

具体的に言うと、
http://d.hatena.ne.jp/tmyt/20101106/1289053765
のようなチェックボックスや、コンボボックス、ラジオボックスです。
これを.NET Compact Framework上から扱えないでしょうか。

TabControlとListViewには、
対応してみた( http://d.hatena.ne.jp/ch3cooh393/20101107 )のですが、
それ以外のコントロールでの対応方法が分かりませんでした。

よろしくお願いいたします。

ファイルはどこに出来るの

$
0
0

Windows CE のアプリを開発しています。
現状は PocketPC 2003 SE エミュレータ で実行しています。
たとえば

Directory.CreateDirectory("\\DATA");
File.Create("\\DATA\\TEST.TEX");

を実行するとファイルはどこに出来るのでしょうか。
確かにファイルは出来ているようなのですが、ファイル名で検索してもどこにも見つかりません。

.NET compact framework でのInvokeの実装方法について教えてください

$
0
0

いつもお世話になっております。

今回、WebRequest.BeginGetResponse メソッド を利用して非同期でネットワークから画像データを取得し、それを既存のPanelクラスに貼り付けようとしています。

最初は安直にHandleEventを使用して既存クラスにコールバックしたのですが、Pictureboxを貼り付けるときに以下のExeptionが発生しました。

「別のスレッドで作成されたコントロールと対話するには、Control.Invoke を使用してください。」

そこでInvokeを使用して処理を渡してあげようとしたのですが、MSDNのリファレンスに

「.NET Compact Framework アプリケーションでは、デリゲートは EventHandler のインスタンスである必要があります。」

とありますが、EventHandlerを呼び出し元&コールバック先でどのように宣言して、それをDelegateクラスとしてInvokeをコールすればいいのかいまひとつ理解できません。以下のように試したのですが、コンパイルは通るのですがなかなかコールバック先に通知が届きません。

  public event EventHandler ImageDownloaded; // 最初に実装したEventHandlerコールバック

  public delegate void myMethodDelegate(object sender, EventArgs e); // EventHandlerのつもりのDelegate宣言

  void RespCallback(IAsyncResult asynchronousResult) // WebRequest.BeginGetResponse メソッド のサンプルのコールバック
  {
   try
   { 
...
    // Read the response into a Stream object.
    Stream responseStream = myRequestState.response.GetResponseStream();
    myRequestState.streamResponse = responseStream;

    
     // 画像ファイルのときの処理

    String str = myRequestState.response.ContentType.ToLower();
    if (str.Contains("jpeg") || str.Contains("jpg"))
    {
    Delegate myDelegate = new myMethodDelegate(ImageDownloaded);
    myRequestState.Invoke(myDelegate); // myRequestStateはサンプルではただのクラスですがInvokeを使用するのでControlクラスを継承しています
    //ImageDownloaded(myRequestState, null); // 最初に試したHandleEventを使用したコールバック
     return;

    ......

 

お分かりの方いましたら、ご教示いただければと思います。

よろしくお願いいたします。

Windows Mobile 5.0 Pocket PC Emulator で日本語が表示できない

$
0
0
Windows Mobile 5.0 Pocket PC Emulator を使うと日本語が表示できません。
Pocket PC 2003 SE エミュレータ ならちゃんと日本語が表示されます。
Windows Mobile 5.0 Pocket PC Emulator にも日本語対応したものがあるのではないかと
思うのですが、見つかりません。
ご存じの方がおられましたら教えてください。

バイト配列で渡されたBMPを表示

$
0
0

バイト配列のBMP形式のデータをPictureBoxに表示するにはどのクラスを使ったらよいでしょう

デスクトップと同様に考えていたら、ImageクラスにFromStreamが無かったりImageConverterもなくて途方に暮れてしまいました

Windows Mobile6.5でフリックを実装したい

$
0
0

VB.netでアプリケーション開発を想定しております。

Windows Mobile6.5上で選択可能なリストをフォーム上に表示し、リストのスクロールをフリックで操作させたいのですが、可能でしょうか。

実装方法等ご教示ください。

Threadクラスでコールバック関数江お実行するには

$
0
0

Threadクラスを使ってマルチスレッドのアプリを作成中です。
スレッドの処理が終わったところで、コールバック関数を実行したいのですが、方法が分かりません。
何か方法は無いでしょうか。


スリープ中の処理起動できませんか?

$
0
0

現在、スリープ中でも一定時間毎に処理を行う方法を探しています。

(スリープ中とは本体の電源ボタンを短押して、画面が消えた状態を入っています。

再度電源ボタンをロック画面が表示される状態です。)

標準のアラーム等ですと、スリープ中でも指定時間が来ると画面が表示され、アラーム時間が来たことを通知してくれますが、

同等のことをユーザープログラムから実現したいのです。

 

プラットフォームはWindows Mobile 6.5 + Visual Basic 2008 Proressionalです。

ご存じの方がいらしたら、お知恵をお貸しください。

よろしくお願いします。

 

Compact Framework 3.5のcabファイルダウンロード

$
0
0
インタネットから直接スマートフォンにCompact Framework 3.5のcabファイルをダウンロードしたいのですが、cabは再配布可能でしょうか?
(会社サイトにcabファイルを置き公開、それをスマートフォンにダウンロードしてよいでしょうか?)

または、cabを直接ダウンロードできるURLがありましたが教えてください。

よろしくお願いします。

Sync Framework 2.1を利用し、SQLAzureとのSQLserverCEに同期をさせようとしてSqlCeSyncDescriptionBuilder.GetDescriptionForTableでエラーになる

$
0
0

お世話になっております。

以下の環境でSyncFrameWork2.1を利用したのテストプログラムを作成しております。
VS2008(SP1)

SQLServerCE3.5(SP2)
WindowsMobile5
開発PC:XP(SP3)
言語:VB

表題のとおりなのですが、下のURLを参考に(URLはデバイス向けではないです)
http://sqlazure.jp/b/?p=194

ここで、
同期を取るテーブルのスキーマを取得する
Dim TBLtest As DbSyncTableDescription = SqlCeSyncDescriptionBuilder.GetDescriptionForTable(TableName, Connection)

「型 'System.Data.SqlServerCe.SqlCeConnection' を含むアセンブリ 'System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' への参照が必要です。参照をプロジェクトに追加してください。」
のエラーが発生します。

参照設定には'System.Data.SqlServerCe(Ver 3.5.8080.0)を設定してあります。
ですが、参照タブで見ると3.5.1.0になっております。
また、該当箇所をコメントアウトし、SQLServerCEへの接続がSP2(Ver 3.5.8080.0)となっているのも確認してあります。

設定の仕方が悪いのか、何が悪いのかよくわからない状況になっております。
質問が漠然となってしまいましたが、解決方法をご教授いただければと思います。

CE5.0 C#2005 でDirectShow を使いたい

$
0
0

C#2005でCE5.0のアプリを作っています。
機器に内蔵されたカメラを DirectShow を使って制御したいと思っています。
しかし、PC用のサンプルやC++のサンプルは見つかったのですが、C#のサンプルが見つかりません。
何か、参考になる資料は無いでしょうか。

WebBrowser コントロールに Xmlファイルの表示ができない

$
0
0

こんにちは。

現在、標記の件で困っております。

Windows Mobile 6.1でWebBrowserコントロールに、ローカルのXMLファイルをスタイルシートを使用して

表示しておりましたが、Windows Mobile 6.5に移植したところ、表示できなくなりました。

仕様または表示方法が変更になったのでしょうか。

表示方法、解決策をご存知の方がおられましたらご教授願えないでしょうか。

よろしくお願い致します。

 

【環境】

Visual Studio 2008 Professional C#

NET Compact Framework 3.5

Windows Mobile 6.5

WebRequest.Create().GetResponseでSystem.UriFormatExceptionが発生する

$
0
0

はじめまして。

現在、WindowsMobileアプリケーションの開発を行っているのですが表題のエラーが発生致して困っております。

詳細は下記になります。

 

【環境】

VisualStudio2008

NET Compact Framework 3.5

JPN Windows Mobile 6 Professional Emulator

 

【コード】

//Program.cs

using System;
using System.Linq;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Net;

namespace SmartDeviceProject1
{
    static class Program
    {
        static void webreq()
        {
            WebRequest.Create("http://www.microsoft.com/ja/jp/default.aspx").GetResponse();
        }

        /// <summary>
        /// アプリケーションのメイン エントリ ポイントです。
        /// </summary>
        [MTAThread]
        static void Main()
        {
            webreq(); //「'System.UriFormatException' の初回例外が System.dll で発生しました。」が出力される
            webreq(); // 同上
            webreq(); // 同上 + タイムアウト(例外発生)
        }
    }
}

 

1回目と2回目では例外が出力されているとはいえ上手く行くのに、3回目では失敗しまいます。

もし回避策/解決策等を御存知の方がおられるなら、ご教授いただければ幸いです。

よろしくお願い致します。

.Net Compact Framework 1.0から3.5への移行に関して

$
0
0

.Net Compact Framework 1.0 から 3.5 への移行を計画しております。

移行に関しての注意点などがあればご教示いただきたく、投稿いたしました。

 

検索しても .Net Frameworkの移行サイトは見つかるのですが、

Compact Frameworkの移行サイトが見つかりませんでした。

 

何か、情報ありましたら、ご教示いただけますでしょうか。

 


Windows Mobile から、XPの共有フォルダへWNetAddConnection3 関数で接続したい

$
0
0

Windows Mobile 6.5 端末から無線LAN経由でXPの共有フォルダへ、VB.Netのアプリで「WNetAddConnection3」APIを使用し、接続しようとするが、実行時、「PInvoke DLL mpr.dllが見つかりませんでした」と出力されます。

1.Windows Mobile 6.5 (NTT Docomo F-05B) アプリはVB.Net(Visual Studio 2008)で作成 

2.Windows XP Pro SP3 共有フォルダは everyoneに変更権限付与

エラー出力の「mpr.dll」を、Windowsフォルダや、exeのあるフォルダにコピーして実行しても同様です。

原因が判らず困っています。何か、思いあたることはないでしょうか?

 

Windows Mobile端末からXPの共有フォルダにWNetAddConnection3関数で接続できない場合がある

$
0
0

Windows Mobile 端末から、無線LANアクセスポイント経由で、XPパソコンの共有フォルダへWNetAddConnection3関数で接続時、接続可能な場合と、「ERROR_BAD_NETPATH:53」(共有フォルダが見えない?)が返り、接続不可の場合があります。

別のパソコンから、共有フォルダは必ず見え、上記の同一端末から同一XPパソコンとのSOCKET通信は必ず成功します。また、XPパソコン側のSOCKET通信アプリを停止させ、端末からSOCKET通信を行い、通信失敗した後であれば、WNetAddConnection3関数で共有フォルダに必ず接続できます。

ネットワークの設定や共有フォルダの設定には問題ない思うのですが、共有フォルダ接続とSOCKET通信では、何か違いがあるのでしょうか? XPパソコンとWindows Mobile端末の共有フォルダ接続には、何か違いがあるのでしょうか?

たとえば、WNetAddConnection3関数で接続する前に、何かの処理を追加すれば接続できる(共有フォルダが「見える)ようになるのでしょうか?

どなたかご存知の方はおられませんでしょうか?

このフォーラムに質問する内容ではないかもしれませんが、よろしくお願いします。

 

多重起動について

$
0
0

はじめまして。nakayoshiと申します。

.netは初心者で試行錯誤で社内で利用するWindowsMobile6.5端末の開発をしています。

開発したアプリケーションを登録し、スタートからアイコンをタップすると、無事思った通りの動作をしています。

しかし、他の人にテストしてもらったときに、起動はダブルクリックのようにやると思い、

アイコン連打したところ、複数立ち上がってしまいました。

そこで、ネット上で調査して下記コードを書いてみましたが効果がありません。

どこが悪いのかわかりません。

何分初心者なので見当違いなのかもよく分かってませんが、ご教授下さい。

スタートアップオブジェクトはSub Mainとしました。

PublicClass Strat'=============================='スタートクラス'==============================SharedSub Main()'多重起動チェックConst ERROR_ALREADY_EXISTS AsInteger = 183If CreateMutex(IntPtr.Zero, True, System.Reflection.Assembly.GetExecutingAssembly().GetName().Name) <> 0 ThenIf GetLastError() = ERROR_ALREADY_EXISTS Then
        MessageBox.Show("すでに起動しています。", "メッセージ")
        Application.Exit()EndIfEndIf'FRM_MENUを開く
    Application.Run(New FRM_MENU())EndSub<DllImport("CoreDll.Dll")> PrivateSharedFunction GetLastError() AsIntegerEndFunction<DllImport("CoreDll.Dll", EntryPoint:="CreateMutexW")> PrivateSharedFunction CreateMutex(ByVal lpMutexAttributes As IntPtr, ByVal InitialOwner AsBoolean, ByVal MutexName AsString) AsIntegerEndFunctionEndClass

列挙体(enum)で定義した値の最大値を取得する方法

$
0
0

.net Compact Framework 3.5 で質問です。(VB.NET)

通常の .NET Framework であれば Enum.GetValues() メソッドが利用可能でしたが、

.NET Compact Framework の場合に使用できなくて悩んでます。

.NET Framework 2.0 にて、列挙体で定義してある最大値を取得する関数を作っていたのでそれをそのまま利用しようと思っていたのですが。。。

(以下、その関数をUpします)

同様の事は実現可能でしょうか。

Public Function GetMaxEnum(Byval _Enum As Ststem.Type) As Integer
        Dim i As Integer
        Dim Num As Integer = System.Int32.MinValue

        For Each i In System.Enum.GetValues(_Enum)
            If i > Num Then
                Num = i
            End If
        Next

        Return Num
End Function


DataGridのUp/Downキーを無効にしたい

$
0
0

.NET Compact Framework 3.5 にて、DataGrid を利用しています。(VB.NET)


DataGrid上にフォーカスがあるとき、↑キーや↓キーの制御を自前で制御したいので無効にしたいのですが、 DataGrid の KeyDown イベントで e.Handled = True にしても効果が無く困っています。

KeyDown イベントで Up/Down のKeyCodeを捕捉はできるのですが、捕捉したときには既に勝手にセルを移動してしまっているようなのです。


やりたい事としては、DataGridの先頭行にフォーカスがあるときと、DataGridの最終行にフォーカスがあるときに、他のコントロールにフォーカスを移動させたいため、自前で処理したいのです。

解決方法をご存じの方、よろしくお願いいたします。


以下、効果のなかったコード

Private Sub DataGrid1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles DataGrid1.KeyDown

    Select Case e.KeyCode
        Case Keys.Up
                e.Handled = True
                '先頭行の場合TextBox1にフォーカス移動
                If DataGrid1.CurrentCell.RowNumber = 0 Then
                        TextBox1.Focus()
                End If
        Case Keys.Down
                e.Handled = True
                '3行目の場合TextBox2にフォーカス移動
                If DataGrid1.CurrentCell.RowNumber = 2 Then
                        TextBox2.Focus()
                End If
    End Select

End Sub


Viewing all 80 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>