Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 10.09.2009
Сообщений: 65
1

Ошибка компляции после смены платформы с Windows CE (Compact Framework) на Windows (NET Framework)

06.05.2010, 14:07. Просмотров 2460. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Переделываю проект работавший под управлением WinCE чтобы он работал под WinXP.
Сменил платформу в настройках компилятора, добавил файлы существующего проекта и откомпилировал:
C#
1
2
3
                        Message msg = Message.Create(Target.Handle, (int)KeyMsg, (IntPtr)keycode, (IntPtr)0);
                        MessageWindow.PostMessage(ref msg);//Здесь ошибка компиляции
//Ошибка  13  Элемент "MessageWindow" не существует в текущем контексте.
Как исправить ситуацию, а именно чем можно заменить MessageWindow.PostMessage в Net Framework
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.05.2010, 14:07
Ответы с готовыми решениями:

Ошибка "Файл .dll не предназначен для выполнения Windows 7" после обновления .Net Framework до 4.5
Здравствуйте, Ув. Форумчане. У меня проблема с виндой. В общем, у меня крэк видны, ЦО (центр...

Ошибка "поставщик не зарегистрирован" после смены версии Net Framework
Здравствуйте. Программа отказалась запускаться на целевом компьютере, на котором установлена...

Ошибка 80005002 с Microsoft .Net Framework в Windows Vista
У меня ноутбук HP Compaq 6715s - AMD TL-57 2*1.9 - 2 GB - 160 GB (если это имеет какое-то значение...

[Compact Framework] Ошибка при использовании OpenNETCF.Net.Ftp.FTPWebResponse(): NullReferenceException
Доброго времени суток господа! Вопрос следующий. Использую Compact Framework и для работы с FTP...

4
Комбайнёр
1586 / 684 / 77
Регистрация: 27.05.2008
Сообщений: 2,535
06.05.2010, 14:36 2
Импортировать с библиотеки
C#
1
2
[DllImport("user32.dll", CharSet = CharSet.Auto)]
    public static extern bool PostMessage(int hhwnd, uint msg, int wparam, int lparam);
1
0 / 0 / 0
Регистрация: 10.09.2009
Сообщений: 65
06.05.2010, 15:46  [ТС] 3
Ошибка в ходе выполнения
Инициализатор типа "xxx" выдал исключение.
TypeInitializationException.

Добавлено через 12 минут
В коде:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
            public override string ToString()
            {
                return 
                    " " + koef.ToString() + 
                    " " + lid_cmd.ToString().PadRight(10) + 
                    " " + fire_cmd.ToString().PadRight(10) +
                    " " + anamech_cmd.ToString().PadRight(10) + 
                    " " + sensflash_cmd.ToString().PadRight(10) +
                    " " + fan_cmd.ToString().PadRight(10) + 
                    " " + analiz_cmd.ToString().PadRight(10) +
                    " " + reg_cmd.ToString().PadRight(15) 
                    ;
            }
Добавлено через 21 минуту
Ошибку вызывает:
C#
1
koef.ToString()
структура koef заполнена, контрольная точка, расположенная в методе koef.ToString() не срабатывает.
0
Комбайнёр
1586 / 684 / 77
Регистрация: 27.05.2008
Сообщений: 2,535
06.05.2010, 16:05 4
Все ли переменные имеют значения?
0
0 / 0 / 0
Регистрация: 10.09.2009
Сообщений: 65
07.05.2010, 07:46  [ТС] 5
Все переменные инициализированы, вот еще ошибка в ходе выполнения
(я думаю причина всех ошибок одна):
C#
1
static private XmlSerializer serializer = new XmlSerializer(typeof(t_koef));

InvalidOperationException
atwo21.MIO недоступен в силу его уровня защиты. Возможна обработка только общих типов.


Вот описание структуры t_koef.
Структура находится в классе MIO.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
public struct t_koef
        {
        //Ïîëüçîâàòåëüñêèå êîýôôèöèåíòû
            public UInt16            password;       //Êîä äîñòóïà 1..65534 äîñòóï çàêðûò 0,65535 äîñòóï îòêðûò
            public UInt32            work_time;      //Íàðàáîòêà,*0,01 ñ
            public UInt16            powon_cnt;      //Êîëè÷åñòâî âêëþ÷åíèé àïïàðàòà
            
            public UInt16            lid_closed_lev;
            public UInt16            lid_opened_lev;
            
            public UInt16            ana_up_lev;
            public UInt32            ana_downpos;
            
            public UInt16            fire_up_lev;
            public UInt32            fire_downpos;
            public UInt32            fire_downpos2;
            public byte              fire_power;
            public UInt32            fire_time;
            
            public Int16                     volt220_k;//Ïðè 237 äàò÷èê ïîêàçûâàåò 731 åä.
            public Int16                     volt220_b;
            
            public UInt16            heat_t;
            public UInt16            heat_p;
            public UInt16            heat_t_max;
            
            public t_regkoef               regkoef;
            
            public float                   sens_lev;           //Óðîâåíü äàò÷èêà âñïûøêè â âîëüòàõ
 
            public float                   temp_probz;        //Ïðåäïîëàãàåìàÿ òåìïåðàòóðà
            public float                   stabtemptime;      //Âðåìÿ íà÷àëà íàãðåâà ïîñëå îïóñêàíèÿ äàò÷èêîâ, ñåê
            public override string ToString()
            {
                string s = regkoef.ToString(); 
 
                return
                " ps: " + password.ToString("D5")+
                " " + work_time.ToString().PadLeft(9)+
                " " + powon_cnt.ToString().PadLeft(5)+      
 
                " ld: " + Math.Min(lid_closed_lev,(UInt16)9999).ToString().PadLeft(4)+
                " " + Math.Min(lid_opened_lev, (UInt16)9999).ToString().PadLeft(4) +
 
                " an: " + Math.Min(ana_up_lev, (UInt16)9999).ToString().PadLeft(4) +
                " " + Math.Min(ana_downpos, 9999).ToString().PadLeft(4) +
 
                " fr: " + Math.Min(fire_up_lev, (UInt16)9999).ToString().PadLeft(4) +
                " " + Math.Min(Math.Max(-99999,fire_downpos),999999).ToString().PadLeft(6)+
                " " + Math.Min(Math.Max(-99999, fire_downpos2), 999999).ToString().PadLeft(6) +
                " " + fire_power.ToString().PadLeft(3) +
                " " + Math.Min(fire_time/100.0f,99.99f).ToString().PadLeft(5) +
 
                " vk220: " + Math.Min(Math.Max((Int16)( - 9999), volt220_k), 99999).ToString().PadLeft(5) +
                " " + Math.Min(Math.Max((Int16)( - 9999), volt220_b), 99999).ToString().PadLeft(5) +
 
                " ht: " + heat_t.ToString().PadLeft(5) +
                " " + heat_p.ToString().PadLeft(5) +
                " " + heat_t_max.ToString().PadLeft(5) +
 
                " rk: " + regkoef.ToString() +
 
                " ss: " + Math.Min(Math.Max(0.0f, sens_lev), 9.999f).ToString("F3").PadLeft(5) +
               
                " tz: " + Math.Min(Math.Max(0.0f,temp_probz), 999.0f).ToString("F0").PadLeft(3) +  
                " st: " + Math.Min(Math.Max(0.0f,stabtemptime), 999.9f).ToString("F1").PadLeft(5)
                    ;
            }
            static private XmlSerializer serializer = new XmlSerializer(typeof(t_koef));
 
            static public void Serialize(ref t_koef koef,string FileName)
            {
                if (FileName == null) return;
                if (FileName == "") return;
                try
                {
                    StreamWriter mStreamWriter = new StreamWriter(FileName, false, System.Text.Encoding.UTF8, 1024);
                    serializer.Serialize(mStreamWriter, koef);
                    mStreamWriter.Dispose();
                }
                catch { ;}
            }
 
            static public t_koef Deserialize(string FileName)
            {
                StreamReader mStreamReader = new StreamReader(FileName, System.Text.Encoding.UTF8);
                t_koef koef = (t_koef)serializer.Deserialize(mStreamReader);
                mStreamReader.Dispose();
                return koef;
            }
        };// áàéò
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.05.2010, 07:46

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

В списке Target Framework не выбирается .NET Framework 4 только .NET Framework 4 Client Profile
Свойства проекта (Project -> Properties) -> вкладка Compile -> Advenced complie options -> в списке...

Не устанавливаются .NET Framework 4 и выше (ошибка 0x80070643 Центра обновления Windows)
Перепробовал всё возможное, что пишут в просторах сетях, удалил все версии, удалял клинером, фиксил...

Settings проекта после перебилда с Net Framework 4.0 на Net Framework 3.0
У меня возникла следующая проблема: Если создать проект WinForms под Net Framework 4.0,...

Ошибка при установке .NET Framework 4.6.1: ".NET Framework 4.6.1 не поддерживается этой операционной системой"
Устанавливаю Microsoft .NET Framework на Windows 7. Возникает ошибка как на скриншоте. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.