{"id":20366460,"url":"https://github.com/igorcarmona-git/defaultprinter-ldap","last_synced_at":"2026-04-29T10:08:25.717Z","repository":{"id":252332160,"uuid":"840118339","full_name":"igorcarmona-git/DefaultPrinter-LDAP","owner":"igorcarmona-git","description":"Código criado para resolver um problema de seleção de impressoras padrão no Windows, via Active Directory Server não resolvia por GPO.","archived":false,"fork":false,"pushed_at":"2024-08-09T02:53:22.000Z","size":4,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-20T03:03:49.897Z","etag":null,"topics":["active-directory","ldap","ldap-authentication","printers","python3","windows"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/igorcarmona-git.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-09T02:32:59.000Z","updated_at":"2024-08-09T02:56:28.000Z","dependencies_parsed_at":"2024-08-09T03:53:58.705Z","dependency_job_id":"26207c43-1479-4935-a1a5-cbbc56db441f","html_url":"https://github.com/igorcarmona-git/DefaultPrinter-LDAP","commit_stats":null,"previous_names":["igorcarmona-git/defaultprinter-ldap"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/igorcarmona-git/DefaultPrinter-LDAP","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorcarmona-git%2FDefaultPrinter-LDAP","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorcarmona-git%2FDefaultPrinter-LDAP/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorcarmona-git%2FDefaultPrinter-LDAP/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorcarmona-git%2FDefaultPrinter-LDAP/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/igorcarmona-git","download_url":"https://codeload.github.com/igorcarmona-git/DefaultPrinter-LDAP/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/igorcarmona-git%2FDefaultPrinter-LDAP/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32420478,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T06:29:02.080Z","status":"ssl_error","status_checked_at":"2026-04-29T06:29:00.631Z","response_time":110,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["active-directory","ldap","ldap-authentication","printers","python3","windows"],"created_at":"2024-11-15T00:24:56.785Z","updated_at":"2026-04-29T10:08:25.701Z","avatar_url":"https://github.com/igorcarmona-git.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Solução interna para um problema de seleção de impressoras padrão no Windows em diversos locais diferentes.\r\n\r\nTrabalho em uma empresa onde os funcionários que atuam em determinada atividade não ficam somente no mesmo setor. Acontecia que, a pessoa selecionava a impressora como padrão em um local e quando se deslocava para um local diferente com outra impressora tinha que ficar selecionando a impressora toda vez como padrão. (O sistema só imprimia as guias de atendimento e etc, somente se ativo a opção, com isso, ocasionava diversos problemas).\r\n\r\n**- Observações:**\r\n- Entende-se de que você já tenha o servidor AD configurado, politicas de grupo definidas e um scritlogon definido para que todos os usuários na rede possam executar ao fazer login.\r\n- Python 3.12 deve estar instalado no computador.\r\n\r\n## Funcionalidades\r\n\r\nEste código ele faz login no servidor LDAP (Lightweight Directory Access Protocol), verifica se o usuário logado tem impressoras disponíveis localmente naquela máquina e verifica se o hostname do computador está vinculado ao nome da impressora disponivel para o usuário dele. Se tiver impressora, ele seleciona determinada impressora como padrão\r\n\r\n**1. Clone o repositório:**\r\n\r\n```bash\r\ngit clone https://https://github.com/igorcarmona-git/DefaultPrinter-LDAP.git\r\ncd DefaultPrinter-LDAP\r\n```\r\n\r\n**2. Instale as dependências:** (Recomendado via scriptlogon (netlogon))\r\n```bash\r\npython -m pip install --upgrade pip\r\npython -m pip install ldap3 pywin32\r\n```\r\n\r\n**3. Exemplo de código de scriptlogon (netlogon)**:\r\n```code\r\nrem Definir variáveis de ambiente com valores específicos\r\nSETX AD_SERVER valueHere\r\nSETX AD_USER valueHere\r\nSETX AD_PASSWORD valueHere\r\nSETX AD_SEARCH_BASE valueHere\r\n\r\nrem Pausar para garantir que as variáveis sejam definidas antes de atualizar\r\ntimeout /t 5\r\n\r\nrem Instalar pacotes Python necessários\r\necho Instalando pacotes Python necessários\r\npython -m pip install --upgrade pip\r\npython -m pip install ldap3 pywin32\r\n\r\nrem Executar o script Python e capturar o código de saída\r\necho Executando script DefaultPrinter.py.............\r\nset filePrinter=\\\\serverHere\\netlogon\\PrinterDefault\\PrinterDefault.py\r\npython %filePrinter%\r\n\r\nrem Redefinir variáveis de ambiente permanentes para valores iniciais\r\nSETX AD_SERVER 0\r\nSETX AD_USER 0\r\nSETX AD_PASSWORD 0\r\nSETX AD_SEARCH_BASE 0\r\n\r\necho Configurações concluídas com sucesso....[OK]\r\n```\r\n**As variáveis de ambiente definidas no código logon serão usadas no código em momento de execução e depois redefinidas novamente para um valor nulo.**\r\n\r\n## Contribuição\r\nContribuições são bem-vindas! Sinta-se à vontade para abrir issues ou pull requests para melhorar o projeto.\r\n\r\n**Para mais informações, entrar em contato via redes sociais.**\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figorcarmona-git%2Fdefaultprinter-ldap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Figorcarmona-git%2Fdefaultprinter-ldap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figorcarmona-git%2Fdefaultprinter-ldap/lists"}