Делимся опытом Наступив на грабли - сообщи другим! Обмен опытом разработки и ремонта электронных устройств. |
20.08.2011, 13:02
|
#251
|
Гражданин KAZUS.RU
Регистрация: 03.02.2007
Сообщений: 566
Сказал спасибо: 8
Сказали Спасибо 53 раз(а) в 33 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от кустомер
|
Сравним с VB:
Form1.Top = 100
Form1.Left = 200
|
Сравним с Qt:
Form1.setPos(200,100);
Последний раз редактировалось evg220; 20.08.2011 в 13:19.
|
|
|
|
20.08.2011, 13:21
|
#252
|
Вид на жительство
Регистрация: 03.06.2010
Сообщений: 452
Сказал спасибо: 35
Сказали Спасибо 168 раз(а) в 133 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от aleksandr-zh
|
terminator_seva, а на Smallbasic к портам обратиться можно?
я как-то его пытался освоить, но что-то с портами не разобрался
|
Бегло пробежался по документации. Изначально такой возможности нет. Но можно использовать дополнения.
Беглый поиск по гуглу указал на это.
|
|
|
Сказали "Спасибо" terminator_seva
|
|
|
20.08.2011, 14:24
|
#253
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от dosikus
|
Ну совершенно нет .
Для осознания вам придется хоть раз просмотреть код в ollydbg .
|
А для принципиально не читавших мои посты, приходится повторить еще раз: меня мало волнует внутреннее устройство кода. Ферштейн?
Сообщение от evg220
|
Сравним с Qt:
Form1.setPos(200,100);
|
Вот это вполне вменяемо. Киньте ссылочку, плиз, где почитать об общей структуре и идеологии кодирования. (На русском языке).
|
|
|
|
20.08.2011, 15:47
|
#254
|
Почётный гражданин KAZUS.RU
Регистрация: 19.02.2008
Сообщений: 1,801
Сказал спасибо: 124
Сказали Спасибо 602 раз(а) в 419 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от кустомер
|
Сравним с VB:
Form1.Top = 100
Form1.Left = 200
|
А в С# будет
private void Form1_Load(object sender, EventArgs e)
{
this.Top = 100;
this.Left = 200;
}
|
|
|
|
20.08.2011, 15:58
|
#255
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от кустомер
|
А для принципиально не читавших мои посты, приходится повторить еще раз: меня мало волнует внутреннее устройство кода. Ферштейн?
|
Ответить вам тем же ?
Но похоже вы даже не понимаете о чем пишите .
Флаг вам в руки , можете и дальше уверовать в крутизну говнокода VB и легкость написания приложений.
Попробуйте напрямую вызвать любую стороннюю DLL из вашего горячо_любимого VB.
Вам то это может и не надо, спорить не буду .
Но вот именно это и говорит о легкости написания в Pure СВОИХ ПРИЛОЖЕНИЙ
именно для ембеддеров , малым по размеру коде и естественно скорости выполнения.
Кроме работы с DLL и написание своих DLL, есть инлайн ассемблер , приятный интерфейс и
куча остального.
Вот только не надо нам здесь о VB , это давным давно пройденный этап.
Ничего хорошего ни в VB ни тем более в VB .NET нету...
__________________
Осторожно , злой кот
Последний раз редактировалось dosikus; 20.08.2011 в 16:04.
|
|
|
|
20.08.2011, 16:56
|
#256
|
Почётный гражданин KAZUS.RU
Регистрация: 26.01.2007
Сообщений: 3,123
Сказал спасибо: 61
Сказали Спасибо 1,153 раз(а) в 624 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Ответ на вопрос " Как научиться писать ПО под Win?" лежит в плоскости "Начать писать" на любом из понравившихся (за глаза, доступность или совету) языков и задавать вопросы по мере их возникновения.
|
|
|
|
20.08.2011, 17:02
|
#257
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от dosikus
|
Попробуйте напрямую вызвать любую стороннюю DLL из вашего
|
dosikus, специально для тебя...
PHP код:
|
Option Explicit
Private Declare Function Inp Lib "inpout32.dll" _
Alias "Inp32" (ByVal PortAddress As Integer) As Integer
Private Declare Sub Out Lib "inpout32.dll" _
Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)
...
Private r1 As Double
Private r2 As Double
Private r3 As Double
Private r4 As Double
.... бла-бла-бла...
Private Sub Command4_Click()
If i = 0 Then
Out &H378, r1
Out &H37A, 10
i = i + 1
Out &H378, 8
Out &H37A, 11
ElseIf i = 1 Then
Out &H378, r2
Out &H37A, 10
i = i + 1
Out &H378, 4
Out &H37A, 11
ElseIf i = 2 Then
Out &H378, r3
Out &H37A, 10
i = i + 1
Out &H378, 2
Out &H37A, 11
ElseIf i = 3 Then
Out &H378, r4
Out &H37A, 10
i = 0
Out &H378, 1
Out &H37A, 11
End If
'Label4.Caption = i
End Sub
|
|
|
|
|
20.08.2011, 17:04
|
#258
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2009
Сообщений: 4,561
Сказал спасибо: 619
Сказали Спасибо 1,813 раз(а) в 974 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от dosikus
|
Попробуйте напрямую вызвать любую стороннюю DLL из вашего горячо_любимого VB.
|
Не очень въехал, что Вы подрзумеваете, говоря "напрямую".
DLL в VB вызываются в модуле обычно. Единственное, что меня напрягло - выяснить все параметры, каковых хочет дллка. Если они известны и подробно разжеваны - сам вызов особой проблемы не представляет.
Сообщение от dosikus
|
Вам то это может и не надо, спорить не буду .
|
Вот тут Вы очень наблюдательны. В рабочих задачах мне еще не попалось что-то такое, что невозможно было бы сделать написанием кода.
Сообщение от dosikus
|
Но вот именно это и говорит о легкости написания в Pure СВОИХ ПРИЛОЖЕНИЙ
|
Вот этой логики как-то не уловил: что легче - понавтыкать код обработки событий в уже готовые места, или озаботиться верчением всех циклов ожидания событий, плюс каждое действие - довольно громоздкая функция?.
Сообщение от dosikus
|
именно для ембеддеров , малым по размеру коде
|
О каком коде идет речь? Если об исполняемом - то с сегодняшними ресурсами - он должен лишь умещаться на CD ![Очень смешно](images/smilies/icon_veryhappy.gif) Размер исходного кода для меня значительно важнее, ибо это - прямая работа моих рук и мозгов, кто не понял))))))
Сообщение от dosikus
|
и естественно скорости выполнения.
|
Зачем нужны субсветовые скорости выполнения, когда для обмена через порт хватает 2400?
Сообщение от dosikus
|
Кроме работы с DLL и написание своих DLL, есть инлайн ассемблер , приятный интерфейс и куча остального.
|
Это в Pure - интерфейс?! Может быть Вы имеете ввиду что-то иное, чем его Visual Designer?
Сообщение от dosikus
|
Вот только не надо нам здесь о VB , это давным давно пройденный этап.
|
Согласен. Если бы я был доволен им на все 100, само это обсуждение не представляло бы для меня интереса)))
Но ведь лучшего пока еще не нашлось
|
|
|
|
20.08.2011, 17:19
|
#259
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
DLL-ка фигня. Заметно веселее выяснять функции и параметры работающего приложения, в которое нужно влезть извне...
та же библиотека из Delphi
PHP код:
|
const
IODLL= 'INPOUT32.DLL';
....
function Inp32(port:integer):integer; stdcall external IODLL name 'Inp32';
procedure Out32(port, data:integer); stdcall external IODLL name 'Out32';
....
и сам вызов (с использованием timeout-ов)
....
procedure SendBtr(); //Command, Data :Byte);
var J, I, K ,L :integer;
dw : dword;
Label Wait1, Wait2;//, Wait3;
begin
BtCount:=0;
for I := 1 to 10 do begin
L:=n[I];
for J := 0 to 3 do begin
if (L and Bit3)›0 then K:=Clk else K:=0;
if Form1.CheckBox3.Checked = True then Out32(PW,K)
else Out32(PW, K or Dout);
dw:=GetTickCount+d;
Wait1:
if Form1.CheckBox3.Checked = True then Out32(PW,K or Dout)
else Out32(PW, K);
dw:=GetTickCount+d;
Wait2:
if GetTickCount‹dw then GoTo Wait2;
if Form1.CheckBox3.Checked = True then Out32(PW,K)
else Out32(PW, K or Dout);
L:=L shl 1;
BtCount:=BtCount+1;
end;
end;
end;
|
|
|
|
|
20.08.2011, 17:20
|
#260
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: Как научиться писать ПО под Win?
Сообщение от omercury
|
dosikus, специально для тебя...
|
Ну а теперь возьми ollydbg и созерцай как там все вызывается ![Валяюсь от смеха](images/smilies/icon_biggrin.gif)
Напрямую или через ![Валяюсь от смеха](images/smilies/icon_biggrin.gif) ж...
Ну насмешили .
Что VB что дельфя ваши г....
Скорости вам не нужны ????
Особенно заметно это на приложениях писанных на VB.
Чего только стоят тормоза в оболочках к USBee AX . ![Валяюсь от смеха](images/smilies/icon_biggrin.gif) ![Валяюсь от смеха](images/smilies/icon_biggrin.gif) :
__________________
Осторожно , злой кот
Последний раз редактировалось dosikus; 20.08.2011 в 17:26.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:27.
|
|