Ir para o conteúdo
  1. Inserir Struct em Matriz tridimencional?!?

    bernardo alves
    Por bernardo alves,

    boas eu estou a fazer um trabalho escolar no qual tenho de fazer uma maquina de snacks, criei uma struct pra os produtos e uma matriz tridimensinal para as prateleiras , colunas e stock de cada coluna ...  a minha duvida é como colocar em cada elemento da matriz  para a colocção dos produtos.
    cumprimentos e desde ja obrigado ,
    Bernardo

    • 0 respostas
  2. Re: Assinar digitalmente codigo

    Rui Carlos
    Por Rui Carlos,

    Relativamente a onde comprar, tens muitas opções.  Por exemplo:

    Quanto a assinar a aplicação, o Windows tem ferramentas para isso: https://msdn.microsoft.com/en-us/library/aa387764.aspx. Não sei se o VS tem mais alguma coisa de útil.

    • 1 resposta
  3. LISTVIEW

    DDTRON
    Por DDTRON,

    Srs ,

    Alguém poderia me ajudar a resolver esse probleminha :

    Preciso somar uma coluna do  ListView1:

     FrmDesvio.ListView1.ListItems.Item(1).ListSubItems.Add.Text = TextVaccNC_Sec.Text

    • 0 respostas
  4. Re: Utilizar Webservices da AT

    zabo69
    Por zabo69,
    15 minutos atrás, Miguel Gonçalves disse:

    E o erro é o mencionado acima?

    Entretanto os outros clientes estão a comunicar bem? 

    num vista se colocar  o TLS dá o erro 500, se retirar e ficar o tls1.0 e tls1.1 dá que a ligação foi fechada pelo servidor. 

    Nos postos windows 10 está a funcionar.

    • 7380 respostas
  5. Re: Utilizar Webservices da AT

    Miguel Gonçalves
    Por Miguel Gonçalves,
    51 minutos atrás, zabo69 disse:

    Penso que o suporte do TLS1.2 ao nível do cliente é definido pelo sistema operativo. O meu utilitário és feito com .net 4.5.

    No caso em que me está a dar erro é um windows vista e tem a framework 4.5.1 instalada.

    Tenho outros clientes a funcionar, mas acho que são windows7.

     

    E o erro é o mencionado acima?

    Entretanto os outros clientes estão a comunicar bem? 

    • 7380 respostas
  6. Re: Utilizar Webservices da AT

    zabo69
    Por zabo69,
    5 minutos atrás, Miguel Gonçalves disse:

    Tens de ter a 4.5, no mínimo.

    Penso que o suporte do TLS1.2 ao nível do cliente é definido pelo sistema operativo. O meu utilitário és feito com .net 4.5.

    No caso em que me está a dar erro é um windows vista e tem a framework 4.5.1 instalada.

    Tenho outros clientes a funcionar, mas acho que são windows7.

     

    • 7380 respostas
  7. Re: Utilizar Webservices da AT

    Miguel Gonçalves
    Por Miguel Gonçalves,
    8 minutos atrás, zabo69 disse:

    Aparentemente a versão mínima do windows para suportar TLS1.2 é o windows 7, alguém tem isto a funcionar em versões anteriores? 

    Tens de ter a 4.5, no mínimo.

    • 7380 respostas
  8. Re: Utilizar Webservices da AT

    Miguel Gonçalves
    Por Miguel Gonçalves,
    2 horas atrás, zabo69 disse:

    Como ultrapassou a questão do TLS, no .net 4.5 estou a usar  ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.TLS; 

    Isto estava a funcionar até agora, mas deixou de funcionar e devolve o famoso erro 500. Alguém sabe o que se passa?

    Viva,


    Acho que o servidor arrochou.

    Estive durante a manhã de hoje a comunicar sem problemas. A partir das 11:00 comecei a ter esse erro, depois deixei de o receber por volta das 12:30 e agora voltei a receber...

    • 7380 respostas
  9. Re: Utilizar Webservices da AT

    zabo69
    Por zabo69,

    Aparentemente a versão mínima do windows para suportar TLS1.2 é o windows 7, alguém tem isto a funcionar em versões anteriores? 

    • 7380 respostas
  10. Re: Utilizar Webservices da AT

    zabo69
    Por zabo69,
    Em 09/11/2017 às 11:42, Castanha disse:

    Já ultrapassei a última questão agora ao comunicar está a dar o seguinte erro :

    
    <?xml version="1.0" encoding="UTF-8"?>
    
    <SyncResult xmlns="http://www.sti.pt/sti.stocks" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><State>E</State><Message>Ocorreu um erro ao efectuar o pedido HTTP a https://servicos.portaldasfinancas.gov.pt:401/sgdtws/documentosTransporte. Isto pode ser causado pelo facto do certificado do servidor não estar correctamente configurado com HTTP.SYS no caso HTTPS. Isto também pode ser causado por um erro de correspondência do enlace de segurança entre o cliente e o servidor.</Message><StackTrace> Server stack trace: em System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason) em System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout) em System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout) em System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout) em System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout) em System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs) em System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation) em System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message) Exception rethrown at [0]: em System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) em System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) em Sti.Accounting.ATTransportServiceReference.documentosTransporte.envioDocumentoTransporte(envioDocumentoTransporteRequest request) em Sti.Accounting.ATTransportServiceReference.documentosTransporteClient.Sti.Accounting.ATTransportServiceReference.documentosTransporte.envioDocumentoTransporte(envioDocumentoTransporteRequest request) em Sti.Accounting.ATTransportServiceReference.documentosTransporteClient.envioDocumentoTransporte(StockMovement envioDocumentoTransporteRequestElem) em Sti.Accounting.AT.ProxyAT.EnviarDocuemto(outputs_at_gt input, SettingsAT settings, fat_paramet settingsHospUnid) em Sti.Accounting.AT.BusinessAT.SyncSingleDoc(String idCab, String publicKeyPath, Boolean demo) em Sti.Accounting.WebService.ServiceAT.SyncSingleDoc(String dataSource, Int32 year, String id)</StackTrace><ErrorCode>0</ErrorCode></SyncResult>

    Já tinhas alguma vez visto ?

    Como ultrapassou a questão do TLS, no .net 4.5 estou a usar  ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.TLS; 

    Isto estava a funcionar até agora, mas deixou de funcionar e devolve o famoso erro 500. Alguém sabe o que se passa?

    • 7380 respostas
  11. Re: SAFT-PT: debate de dúvidas e ideias

    Angel93
    Por Angel93,
    15 horas atrás, americob disse:

    I think that, at least, the Top level accounts description must follow the portuguese law "SNC".

    You may always have two descriptions, one in Portuguese and other with the translation, and then use the Portuguese just for SAFT and some legally obliged reports.

    Thanks americob,

    With SNC you want to say that it is only for the accounts with Taxonomy Code assigned?

    In our case, we are using an alternative accounts for Portugal but authorities required us that we have to map all the accounts (also not used). So, we have accounts without Portuguese description... 

    Does anyone have this problem?

    Thanks a lot!

    • 6025 respostas
  12. Re: O p@p tá morto?

    M6
    Por M6,

    Estamos só moribundos... :D

    • 32 respostas
  13. Re: No boundaries: Exfiltration of personal data by session-replay scripts

    Virneto
    Por Virneto,

    Scarry... não tinha sequer ouvido falar em session replay....

    O artigo tem um link para uma lista de sites a utilizar este tipo de estratégia... :confused:

    A verdade é que há uma infinidade de código que "carregamos" ou autorizamos que seja injetado num site nosso sem conhecer o que andam a injetar... a começar pelas tags do google, quer seja para analitics ou outra library qualquer...

    • 1 resposta
  14. Re: No boundaries: Exfiltration of personal data by session-replay scripts

    Rui Carlos
    Por Rui Carlos,
    Citação

    You may know that most websites have third-party analytics scripts that record which pages you visit and the searches you make.  But lately, more and more sites use “session replay” scripts. These scripts record your keystrokes, mouse movements, and scrolling behavior, along with the entire contents of the pages you visit, and send them to third-party servers. Unlike typical analytics services that provide aggregate statistics, these scripts are intended for the recording and playback of individual browsing sessions, as if someone is looking over your shoulder.

    The stated purpose of this data collection includes gathering insights into how users interact with websites and discovering broken or confusing pages. However the extent of data collected by these services far exceeds user expectations [1]; text typed into forms is collected before the user submits the form, and precise mouse movements are saved, all without any visual indication to the user. This data can’t reasonably be expected to be kept anonymous. In fact, some companies allow publishers to explicitly link recordings to a user’s real identity.

    For this study we analyzed seven of the top session replay companies (based on their relative popularity in our measurements [2]). The services studied are Yandex, FullStory, Hotjar, UserReplay, Smartlook, Clicktale, and SessionCam. We found these services in use on 482 of the Alexa top 50,000 sites.

    [...]

    Fonte: https://freedom-to-tinker.com/2017/11/15/no-boundaries-exfiltration-of-personal-data-by-session-replay-scripts/

    • 1 resposta
  15. Re: SAFT-PT: debate de dúvidas e ideias

    americob
    Por americob,

    I think that, at least, the Top level accounts description must follow the portuguese law "SNC".

    You may always have two descriptions, one in Portuguese and other with the translation, and then use the Portuguese just for SAFT and some legally obliged reports.

    • 6025 respostas
  16. Re: O p@p tá morto?

    apocsantos
    Por apocsantos,

    Boa noite,

    Infelizmente já teve tempos melhores, mas não creio que esteja morto!

    Cordiais cumprimentos,

    Apocsantos

    • 32 respostas
  17. Acessar FaxModem (Modem 56kbps) E receber Valores

    carcleo
    Por carcleo,

    Fazemos:

       

     StringConexao ="ATDT"+numeroTelefone+ #13#10;

    E fazemos

          WriteFile(
                      hCommFile,
                      PChar(StringConexao)[0],
                      Length(s),
                      NumberWritten,
                      nil);
    

    E a mágica é feita!
    E o modem liga para um número.

    Agora preciso fazer o contrário:

    Ao receber um chamada, SIM, meu modem está recebendo chamadas quando alguém liga para o meu telefone, qual o comando, e em que situação chamar o comando para saber o número do telefone que está me ligando?


    Se 

         

    WriteFile()

    É a responsável por fazer/receber  as ligações, então de qual parâmetro eu retiro o número da ligação?

    Então,

    No endereço: 

    Comandos Placa

    Nas últimas 2 linhas, estão os últimos 2 comandos que são:

    AT&Zn=s             Armazenar número telefônico
    
    AT&Zn?              Exibir número telefônico
    
    

    Como fazer para capturar então o número do telefone na estrutura da minha aplicação? 

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, spBina;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Edit1: TEdit;
        Memo1: TMemo;
        RadioButton1: TRadioButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    
    var
     Form1: TForm1;
     hCommFile: THandle;
     Status: LongBool;
    
    
    NumberWritten: DWORD;
    Buf : array[0..1023] of Byte;
    s :string;
    
    implementation
    
    uses ConvUtils;
    
    {$R *.dfm}
    
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    //Testa os valores necessários
        begin
    
         //Abre a porta de comunicação
         s:='COM3';
         hCommFile := CreateFile (
                                    PChar(s),
                                    GENERIC_WRITE,
                                    0, // não compartilhado
                                   nil, // sem segurança
                                   OPEN_EXISTING,
                                    FILE_ATTRIBUTE_NORMAL,
                                   0);
    
         // Verifica a abertura da porta
        if hCommFile = INVALID_HANDLE_VALUE then
    
            begin
             memo1.lines.clear;
             memo1.lines.add('Não foi possível abrir a porta selecionada.');
             memo1.lines.add('Discagem não efetuada');
             CloseHandle(hCommFile);
            end
    
        else
    
            begin
    
             memo1.lines.clear;memo1.lines.add('Discando...');
             
             //Cria a string de comando
            if radiobutton1.checked then
             s:='ATDT'
            else
         s:='ATDP';
    
             s := s + Edit1.Text + #13#10;
             //s := 'ATS'+#13#10;
    
    
               memo1.lines.add(s);
             
             //Envia a String de Comando
             NumberWritten:=0;
    
              WriteFile(
                            hCommFile,
                            PChar(s)[0],
                            Length(s),
                            NumberWritten,
                            nil);
         
             memo1.lines.add('Aguardando Atendimento ...');         
             MessageDlg('Retire o telefone do gancho e clique OK para desligar o modem',mtInformation,[mbok], 0);
             
             //Desconecta a ligação
             WriteFile(hCommFile,'ATH',5,NumberWritten,    nil);
             
             //Fecha a porta de comunicação
             CloseHandle(hCommFile);memo1.lines.add('Modem Desconectado.'#13#10);
            end;
    end;
    end;
    end.

    Descobri que fazendo:

    s := 'ATA+ #13#10;

    Recebe a ligação:

    Mas vem junto o barulho do modem

    E ainda não consigo pegar o número do telefone

    • 0 respostas
  18. Re: Autoridade Tributária - Utilização de webservice com SSL

    janota
    Por janota,
    Em 15/11/2017 às 16:50, janota disse:

    Viva,

    Tenho o mesmo problema com as guias transporte. Unable to load client key -8178 NSS error -8178, estou a usar o código do eSkiSo, o qual agradeço novamente. Após várias pesquisas e muitos testes, penso que o problema poderá estar em  estar a usar servidor Apache com centOS 6 e versão curl 7.19.7, que parece apresentar bugs na ligação a sites HTTPS com SSL. Alguém tem a funcionar com a versão 7.19.7 do CentOS? 

    Atualizei a versão curl para 7.56.1 e agora já não dá Unable to load client key -8178 

    mas sim curl error 35 que já estive a ver e tem a ver con a certificação SSL no LOG obtenho: Alguém já conseguiu ultrapassar este problema. As pfxcert.pem e pfxcert.pem foram geradas com o TesteWebServices.pfx e ChavePublicaAT.cer mais recente.  Por defeito está a colocar CAfile: /etc/pki/tls/certs/ca-bundle.crt mesmo que explicite no curl pfxcert.pem

         Connected to servicos.portaldasfinancas.gov.pt (213.13.158.240) port 701 (#0)
         Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
         successfully set certificate verify locations:
         CAfile: /etc/pki/tls/certs/ca-bundle.crt
         CApath: none
         OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to servicos.portaldasfinancas.gov.pt:701  
         stopped the pause stream!
         Closing connection 0

    • 26 respostas
  19. Print Datagrid

    Retsu9
    Por Retsu9,

    Boas,

    tenho uma aplicação que me permite imprimir os dados da datagrid, mas hoje deparei me com este erro:

    W6jlJEX.png?1

     

    Isto só acontece quando tenho um determinado numero de linhas, ou seja, isto de momento só acontece quando tenho 66 registos, se acrescentar ou retirar um registo já não da erros, alguém consegue identificar o porquê? Deixo o código:

    Dim mRow As Integer = 0
        Dim newpage As Boolean = True
      
          Private Sub PrintDocument1_PrintPage(sender As Object, e As PrintPageEventArgs) Handles PrintDocument1.PrintPage
            ' sets it to show '...' for long text
            Dim fmt As StringFormat = New StringFormat(StringFormatFlags.LineLimit)
            fmt.LineAlignment = StringAlignment.Center
            ' fmt.Trimming = StringTrimming.EllipsisCharacter
            Dim y As Int32 = e.MarginBounds.Top
            Dim rc As Rectangle
            Dim x As Int32
            Dim h As Int32 = 0
            Dim row As DataGridViewRow
    
            ' print the header text for a new page
            '   use a grey bg just like the control
            If newpage Then
    
                row = dg_produtos.Rows(mRow) ' --> Erro
    
                x = e.MarginBounds.Left
    
                rc = New Rectangle(x, y, dg_produtos.Size.Width, Label1.Size.Height)
    
                e.Graphics.FillRectangle(Brushes.Transparent, rc)
    
                e.Graphics.DrawRectangle(Pens.Transparent, rc)
                e.Graphics.DrawString("Listagem de " & Label1.Text, Label1.Font, Brushes.Black, rc, fmt)
                y += 35
    
                For Each cell As DataGridViewCell In row.Cells
                    ' since we are printing the control's view,
                    ' skip invidible columns
                    If cell.Visible Then
                        rc = New Rectangle(x, y, cell.Size.Width, cell.Size.Height)
    
                        e.Graphics.FillRectangle(Brushes.LightGray, rc)
                        e.Graphics.DrawRectangle(Pens.Black, rc)
    
                        ' reused in the data pront - should be a function
                        Select Case dg_produtos.Columns(cell.ColumnIndex).DefaultCellStyle.Alignment
                            Case DataGridViewContentAlignment.BottomRight,
                                 DataGridViewContentAlignment.MiddleRight
                                fmt.Alignment = StringAlignment.Far
                                rc.Offset(-1, 0)
                            Case DataGridViewContentAlignment.BottomCenter,
                                DataGridViewContentAlignment.MiddleCenter
                                fmt.Alignment = StringAlignment.Center
                            Case Else
                                fmt.Alignment = StringAlignment.Near
                                rc.Offset(2, 0)
                        End Select
    
                        e.Graphics.DrawString(dg_produtos.Columns(cell.ColumnIndex).HeaderText,
                                                    dg_produtos.Font, Brushes.Black, rc, fmt)
                        x += rc.Width
                        h = Math.Max(h, rc.Height)
                    End If
                Next
                y += h
    
            End If
            newpage = False
    
            ' now print the data for each row
            Dim thisNDX As Int32
            For thisNDX = mRow To dg_produtos.RowCount - 1
                ' no need to try to print the new row
                If dg_produtos.Rows(thisNDX).IsNewRow Then Exit For
    
                row = dg_produtos.Rows(thisNDX)
                x = e.MarginBounds.Left
                h = 0
    
                ' reset X for data
                x = e.MarginBounds.Left
    
                ' print the data
                For Each cell As DataGridViewCell In row.Cells
                    If cell.Visible Then
                        rc = New Rectangle(x, y, cell.Size.Width, cell.Size.Height)
    
                        ' SAMPLE CODE: How To 
                        ' up a RowPrePaint rule
                        'If Convert.ToDecimal(row.Cells(5).Value) < 9.99 Then
                        '    Using br As New SolidBrush(Color.MistyRose)
                        '        e.Graphics.FillRectangle(br, rc)
                        '    End Using
                        'End If
    
                        e.Graphics.DrawRectangle(Pens.Black, rc)
    
                        Select Case dg_produtos.Columns(cell.ColumnIndex).DefaultCellStyle.Alignment
                            Case DataGridViewContentAlignment.BottomRight,
                                 DataGridViewContentAlignment.MiddleRight
                                fmt.Alignment = StringAlignment.Far
                                rc.Offset(-1, 0)
                            Case DataGridViewContentAlignment.BottomCenter,
                                DataGridViewContentAlignment.MiddleCenter
                                fmt.Alignment = StringAlignment.Center
                            Case Else
                                fmt.Alignment = StringAlignment.Near
                                rc.Offset(2, 0)
                        End Select
    
                        If row.Cells(2).Value <= 0 Then
                            e.Graphics.DrawString(cell.FormattedValue.ToString(),
                                              dg_produtos.Font, Brushes.Red, rc)
                        Else
                            e.Graphics.DrawString(cell.FormattedValue.ToString(),
                                              dg_produtos.Font, Brushes.Black, rc)
                        End If
    
    
    
                        x += rc.Width
                        h = Math.Max(h, rc.Height)
                    End If
    
                Next
                y += h
                ' next row to print
                mRow = thisNDX + 1
    
                If y + h > e.MarginBounds.Bottom Then
                    e.HasMorePages = True
                    ' mRow -= 1   causes last row to rePrint on next page
                    newpage = True
                    Return
                End If
            Next
        End Sub

     

    • 0 respostas
  20. Arduino leitura de voltagem

    filipe18
    Por filipe18,

    Boa tarde amigos

    Estou a fazer um projecto  onde tenho com o arduino  saber a voltagem  de uma bateria   de 12 v 

    Como fasso para saber a voltagem que a bateria tem  com o arduino ? 

     

    Obrigado 

    • 0 respostas
  1. Ver Mais Actividade
×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade